大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
如何实现上传和拉取Docker镜像?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
成都创新互联公司专注于企业网络营销推广、网站重做改版、静乐网站定制设计、自适应品牌网站建设、html5、成都做商城网站、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为静乐等各大城市提供网站开发制作服务。1.创建命名空间hhu,创建菜鸟Docker镜像仓库docker1(绑定github中某个仓库,个人可以随意,这个仓库镜像就像是一个app,可以不断的更新它的版本),那么所有测试镜像可以推送到这里,以后作专门的其他镜像可以再申请其他的镜像仓库(比如作Tomcat时,单独申请一个镜像仓库tomcat,作redis时再申请一个redis的仓库,依次类推)。完成;
2.镜像制作,这一步下面单独拎出来详细记录;
3.镜像推送:制作完事后,需要将镜像push到镜像测试仓库中docker1中。基本信息如下–
1.公网地址:registry.cn-shanghai.aliyuncs.com/hhu/docker1
2. 内网地址(ECS可选):registry-internal.cn-shanghai.aliyuncs.com/hhu/docker1
3.代码仓库(即绑定的github上的仓库):https://github.com/Jacksonary/Docker
我的第一个Docker镜像名字为:jacksonary/myfirstapp,根据网络情况选择公网推送,主要过程如下:
# 1.从加速器切换到仓库地址登录 docker login --username=jacksonary@163.com registry.cn-shanghai.aliyuncs.com
# 2.根据镜像名字或者ID为它创建一个标签,缺省为latest docker tag jacksonary/myfirstapp registry.cn-shanghai.aliyuncs.com/hhu/docker1[:镜像版本号]
# 3.推送镜像 docker push registry.cn-shanghai.aliyuncs.com/hhu/docker1[:镜像版本号]
随后可以在阿里云仓库中查看推送的镜像,如下:
在获取上述的镜像文件时,需要将指定镜像版本号,所以在推送镜像时还是建议追加必须的镜像版本号以作区分,如果我需要拉取上述的镜像可以通过如下操作:
# 因为版本缺省默认是latest的,所以获取时可以缺省,或者追加:latest(建议) docker pull registry.cn-shanghai.aliyuncs.com/hhu/docker1
一、Docker镜像的制作
一般是一个项目放一个文件夹,比如官网上有一个项目叫flask-app,那么所有的文件都在项目目录下,我们需要在项目根目录下添加一个叫做”Dockerfile”的文本文件,并且将它的txt后缀去除,然后利用普通的文本编辑器进行Docker环境的编写即可,比如下面这个Dockerfile:
# 1.指定基本镜像为Linux(alipine Docker镜像是只有5M的轻量级Linux系统) FROM alpine:3.5 # 在alipine下安装python和pip,这个app是用Python写的,所以需要安装Python环境,通常是复制文件和安装依赖 RUN apk add --update py2-pip # 安装app所需的Python所必须的 COPY requirements.txt /usr/src/app/ RUN pip install --no-cache-dir -r /usr/src/app/requirements.txt # 复制应用必须的文件到镜像中 COPY app.py /usr/src/app/ COPY templates/index.html /usr/src/app/templates/ # 设置需要暴露的端口号 EXPOSE 5000 # 设置应用通过cmd启动Python应用程序 CMD ["python", "/usr/src/app/app.py"]