本地制作自定义镜像

更新时间:2016/01/26 访问次数:63834

简介

要使用本地host构建的或其它渠道获取的Docker镜像来创建服务,需要先把这些镜像提交到TAE的私有仓库,再用这些镜像来创建服务。

使用步骤

第一步:查看私有仓库的登录信息

到“镜像仓库”页面查看私有仓库的用户名和密码: 

第二步:在本地登录私有仓库

在本地Docker环境中通过命令行登录私有仓库,如图: 
本地Docker环境搭建

docker login –u 用户名 –p 密码 –e 邮箱 https://registry.acs.aliyun.com

注意:邮箱请保证不为空即可

第三步:修改本地镜像的名称

修改本地镜像的名称,使它符合镜像命名规范,如图

docker tag [镜像ID] registry.acs.aliyun.com/[用户名]/[镜像名称:标签]

说明:

  1. Docker规范的镜像名格式如下: 

     

  2. 镜像名的约束:

参数 约束
image的名字 长度不能超过64,不能少于4,只允许[a-z0-9_]
tag 长度1-10,只允许[a-z0-9_.-]

第四步:推送到您的私有镜像仓库

执行命令如下:

docker push registry.acs.aliyun.com/[用户名]/ [镜像名称:标签]

范例

第一步:登录TAE的私有仓库(这里假设用户名是654321,密码是123456),如下:

docker login –u 654321 –p 12345 –e xxx@taobao.com https://registry.acs.aliyun.com

第二步:使用Dockerfile构建镜像,Dockerfile内容如下:

FROM registry.acs.aliyun.com/open/centos:3.0.0
RUN mkdir -p /ace/log && \
echo "python -m SimpleHTTPServer 8080 > /ace/log/helloworld.log" > /ace/bin/start
WORKDIR /ace/log

镜像取名叫helloworld,在Dockerfile文件所在的目录执行如下命令:

docker build -t helloworld .

注意:如果构建失败,可能会出现错误信息“Authentication is required.”,则请开发者检查是否已经login EWS的私有仓库。

第三步:把helloworld镜像改名成规范格式的名称(见上文),如图:

docker tag helloworld registry.acs.aliyun.com/654321/helloworld

第四步:把这个镜像推送到私有仓库,如图:

docker push registry.acs.aliyun.com/654321/helloworld

第五步:push成功后,通过EWS控制台的“镜像仓库”列表查看自定义镜像,如图: 

第六步:利用自定义镜像创建服务。在创建服务的第一步“镜像选择”中,选择刚才推送成功的自定义的镜像。

 

 

FAQ

关于此文档暂时还没有FAQ
返回
顶部