CCE容器服务用户如何上传私有镜像到dockerhub

举报
docker君 发表于 2017/03/29 16:12:16 2017/03/29
【摘要】 用户创建docker应用时,需要提前预置镜像,镜像分为内部镜像、外部镜像;内部镜像又分为私有镜像、公有镜像。

1 背景
用户创建docker应用时,需要提前预置镜像,镜像分为内部镜像、外部镜像;内部镜像又分为私有镜像、公有镜像。用户需要先将镜像上传至镜像仓库中,本文主要描述租户如何上传私有镜像、公有镜像至镜像仓库。

2 前期准备
1、需要准备好镜像文件(这些镜像已经提前制作好,可以直接用来部署应用),本文以push_image.tar.gz表示镜像包的压缩文件,具体操作以实际情况为准
2、需要获取CCE管理集群信息(如bootstrap、dockerhub服务的节点IP、登陆用户名、密码),可以在搭建CCE环境时获取
说明:dockerhub是用于存放用户镜像的镜像仓库
3、获取用户证书(以user01为例),并保存文件“dockercfg.txt”

3 上传私有镜像
Step 1:将push_image.tar.gz上传至bootstrap节点上
Step 2:将push_image.tar.gz拷贝至dockerhub所在节点(基于安全考虑)

Step 3:跳转至dockerhub节点, 解压push_image.tar.gz文件,获取镜像列表
a)在bootstrap节点执行命令 “ssh 192.168.1.154”(登陆dockerhub所在节点)
b)解压压缩文件,获取镜像列表“tar –zxvf push_iamge.tar.gz”
Step 4:进入push_image目录,加载镜像到docker本地仓库
a)cd push_image
b)docker load –i
其中image_file为解压后具体镜像文件

Step 5:将docker镜像重命名为可以上传到docker hub的样式
docker tag 24d5f4a92e91 9.38.58.147:443/vdc01/busybox
参数说明:
24d5f4a92e91:步骤4上传的镜像ID(MAGE_ID),可以通过docker images查询
9.38.58.147:dockerhub所在节点的浮动IP地址
vdc01:user01所属的domain(即FM的vdc名称)
busybox:镜像名称

Step 6:登陆到dockerhub
docker login -u _auth_token -p -e a 9.38.58.147:443
:前期准备 中第三步获取的dockercfg.txt文件,打开文件获取“auth”值,然后执行命令“echo | base64 –d“(其中encoded_certificate为”auth”值),取最后的回显结果。
如果出现“Login Successed”的界面,则说明登录成功。

Step 7:把镜像push到用户私有仓库
docker push 9.38.58.147:443/vdc01/busybox

Step 8:使用vdc01下user02登陆CCE服务界面,查看上传的私有镜像,上传成功!


4 上传公有镜像
上传公有镜像与私有镜像步骤类似,只是操作用户有所区别,上传公有镜像使用FM portal超级管理员账户 cloud_admin用户登陆FusionContainer界面,下载AK/SK文件,上传认证文件。
这里只描述两者操作的区别点点,其余操作步骤与上传私有镜像完全一致
Step 5:docker镜像重命名(打tag)时
命令:docker tag 24d5f4a92e91 9.38.58.147:443/offical/busybox
说明:offical表示公有镜像模式
Step 7:将镜像push到镜像仓库
命令:docker push 9.38.58.147:443/offical/busybox


5 常见FAQ
问题1:push镜像时报错?

解决方法:
user01为用户名,需要填写user01所属的domain名称(即FM上查看到的VDC名称)
问题2:push镜像时报错localhost:443/vdc01/busybox不存在?

解决方法:进入dockerhub节点,查看容器绑定的端口:docker ps,如下图所示,绑定的是9.38.58.147:443,所以push的时候,需要填写docker push 9.38.58.147:443/vdc01/busybox

问题3:push镜像时使用大写的Domain名报错,在push镜像时,不支持domain名为大写

解决方法:在FM修改vdc命称为小写。由于对接FM后,FM支持用户创建vdc使用大写字母,因此,CCE需要做相应修改,与FM保持一致(已确定,在文档中落地)。

作者 | 李伟昌

转载请注明出处:华为云博客 https://portal.hwclouds.com/blogs

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。