上云无忧 > 文档中心 > 天翼云容器客户端上传镜像教程
容器镜像服务
天翼云容器客户端上传镜像教程

文档简介:
容器镜像服务是一种支持容器镜像全生命周期管理的服务, 提供简单易用、安全可靠的镜像管理功能,帮助用户快速部署容器化服务。本文档将帮助您学习如何安装容器引擎以及如何使用容器引擎客户端上传镜像到容器镜像仓库。
*产品来源:中国电信天翼云。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

容器客户端上传镜像


入门指引

容器镜像服务是一种支持容器镜像全生命周期管理的服务, 提供简单易用、安全可靠的镜像管理功能,帮助用户快速部署容器化服务。本文档将帮助您学习如何安装容器引擎以及如何使用容器引擎客户端上传镜像到容器镜像仓库。

说明:

上传镜像仅适用于管理控制台操作。

图 入门流程图

 


准备工作

在使用容器镜像服务前,您需要完成天翼云注册并实名认证的准备工作。


本文以一个2048应用为例,讲述根据该应用编写Dockerfile文件构建镜像并上传至容器镜像服务的操作。您可以编写一个Dockerfile文件,以alpine:3.7为基础镜像,来构建一个2048容器镜像。


  • 前提条件

  • 已安装Docker 

  • 已获取2048应用,并将该镜像下载至本地。


  • 构建镜像

步骤1:使用root用户登录虚拟机。

步骤2:创建2048-demo目录。

mkdir 2048-demo

步骤3:下载2048源码至2048-demo目录中。

该应用源码地址为:https://github.com/gabrielecirulli/2048.git。

步骤4:创建名为Dockerfile的文件。

cd 2048-demo

touch Dockerfile

步骤5:编辑Dockerfile。

vi Dockerfile

FROM alpine:3.7   

RUN apk --update add nginx   

COPY 2048 /usr/share/nginx/html   

EXPOSE 80  

CMD ["nginx", "-g", "daemon off;"]

  • FROM:指定基础镜像alpine:3.7。

  • RUN:安装nginx。

  • COPY:将2048源码拷贝到容器内的“/usr/share/nginx/html”目录。

  • EXPOSE:暴露容器的80端口。

  • CMD:指定容器运行时的默认命令。

保存并退出。

步骤6:执行以下命令构建镜像。

docker build -t 2048-demo:v1 .

镜像构建的格式为:docker build [选项] <上下文路径>,详细命令可参考https://docs.docker.com/engine/reference/commandline/build/。

  • -t 2048-demo:v1:指定镜像的名称和版本。

  • .:指定Dockerfile所在目录,镜像构建命令会按照Dockerfile的内容构建镜像。

步骤7:执行以下命令,可查看到已成功构建的2048-demo镜像,版本为v1。

docker images | grep 2048-demo

查看已构建的2048-demo镜像

 


创建组织

组织用于隔离镜像,并为租户下用户指定不同的权限(读取、编辑、管理)。

  • 读取:只能下载镜像,不能上传。

  • 编辑:下载镜像、上传镜像、编辑镜像属性以及创建触发器。

  • 管理:下载镜像、上传镜像、删除镜像或版本、编辑镜像属性、添加授权、以及共享镜像。

步骤1:登录容器镜像服务控制台。

步骤2:在左侧菜单栏选择“组织管理”,单击右侧“创建组织”,在弹出的页面中填写“组织名称”,然后单击“确定”。


客户端上传镜像

docker客户端上传镜像,是指使用docker命令将镜像上传到容器镜像服务的镜像仓库。

本章节以2048-demo:v1镜像为例,介绍如何上传镜像。上传成功后,在“我的镜像”中显示已上传成功的镜像。

 注意:

  • 使用客户端上传镜像,镜像的每个layer大小不能超过10G。

  • 上传镜像的Docker客户端版本必须为1.11.2及以上。


步骤1:连接容器镜像服务。

a. 登录容器镜像服务控制台。

b. 在左侧菜单栏选择“我的镜像”,单击右侧“客户端上传”,在弹出的页面中单击“生成临时docker login指令”,单击 复制docker login指令。docker login指令末尾的域名即为当前镜像仓库地址,记录该地址。

 说明:

此处获取的docker login指令有效期为24小时,若需要长期有效的docker login指令,请参见获取长期有效docker login指令。

c. 在安装Docker的机器中执行上一步复制的docker login指令。

登录成功会显示“login succeeded”。


步骤2:在安装docker的机器给2048-demo:v1镜像打标签。

docker tag [镜像名称:版本名称] [镜像仓库地址]/[组织名称]/[镜像名称:版本名称]

 说明:

镜像名称不支持多级目录格式,例如:镜像名称可命名为“2048-demo”,不可命名为“2048-demo/test”。

样例如下:

docker tag 2048-demo:v1 {Public image address}/group/2048-demo:v1

其中:

  • {Public image address}为容器镜像服务的镜像仓库地址。获取该地址的方式:单击“我的镜像”,单击镜像列表中的镜像名称,在“Pull/Push指南”页签中的“1. 本镜像地址”下可以看到镜像仓库地址。

  • group为组织名称,如果该组织还没有创建,容器镜像服务会根据组织名称自动创建一个组织。

  • 2048-demo:v1 为镜像名称和版本号。

说明:

步骤3:上传镜像至镜像仓库。

docker push [镜像仓库地址]/[组织名称]/[镜像名称:版本名称]

样例如下:

docker push {Public image address}/group/2048-demo:v1

终端显示如下信息,表明push镜像成功。

6d6b9812c8ae: Pushed  

695da0025de6: Pushed  

fe4c16cbf7a4: Pushed  

v1: digest: sha256:eb7e3bbd8e3040efa71d9c2cacfa12a8e39c6b2ccd15eac12bdc49e0b66cee63 size: 948

返回系统,在“我的镜像”页面,执行刷新操作后可查看到对应的镜像信息。

相似文档
  • 组织用于隔离镜像,并为租户下用户指定不同的权限(读取、编辑、管理)。 组织用于隔离镜像仓库,每个组织可对应一个公司或部门,将其拥有的镜像集中在该组织下。在不同的组织下,可以有同名的镜像。同一IAM用户可属于不同的组织。SWR支持为账户下IAM用户分配相应的访问权限(读取、编辑、管理)。
  • 操作场景: 本章节以2048-demo:v1镜像为例,介绍如何使用客户端上传镜像。客户端上传镜像,是指使用命令将镜像上传到容器镜像服务的镜像仓库。 本章节以2048-demo:v1镜像为例,介绍如何上传镜像。
  • 操作场景 本章节介绍如何获取长期有效的登录指令,长期有效登录指令的有效期为永久。 说明: 为保证安全,获取登录指令过程建议在开发环境执行。
  • 操作场景: 从页面上传镜像,是指直接通过页面将镜像上传到容器镜像服务。 注意: 每次最多上传10个文件,单个文件大小(含解压后)不得超过2G,页面上传支持tar、tar.gz格式镜像文件。
  • 操作场景: 镜像上传后,您可以获取镜像下载地址,使用docker pull命令下载镜像。 操作步骤 1. 以root用户登录容器引擎所在的虚拟机。 2. 参考1获取登录访问权限,连接容器镜像服务。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部