链接复制成功!
推送镜像到镜像仓库
操作场景
推送镜像(也叫上传镜像)到镜像仓库可以帮助您将本地的镜像推送到容器镜像服务的镜像仓库中,更方便的管理您的镜像。推送镜像到镜像仓库有两种方式:通过容器镜像客户端上传和通过SWR页面上传。
- 客户端上传镜像,是指在安装了容器引擎客户端的机器上使用docker命令或者ctr命令将镜像上传到容器镜像服务的镜像仓库。如果是docker容器引擎客户端则使用docker push命令上传。如果是containerd容器引擎客户端则使用ctr push命令上传。适用于大镜像的上传。
说明:
容器引擎客户端推送镜像既可走内网链路也可走外网链路。
- SWR页面上传镜像,是指直接通过SWR控制台页面将镜像上传到容器镜像服务的镜像仓库。适用于小镜像的上传。
约束与限制
- 使用docker容器引擎客户端上传镜像时,需确保docker容器引擎客户端为1.11.2(包含)到24.0.9(包含)之间的版本;且镜像的每个layer大小不能超过10G;单个租户同时并发上传镜像layer总数不大于20个。
- 页面上传每次最多上传10个文件,单个文件大小(含解压后)不得超过2G。且仅支持上传1.11.2(包含)到24.0.9(包含)版本Docker容器引擎客户端制作的镜像压缩包。
推送镜像到镜像仓库
小镜像可以使用页面上传镜像,暂不支持断点续传。大镜像推荐使用客户端上传。
SWR对存储的镜像数量没有限制,您可以根据需要上传镜像。
docker容器引擎客户端
- 制作容器镜像或导入镜像文件
- 连接容器镜像服务。
- 登录容器镜像服务控制台。
- 选择左侧导航栏的“总览”,单击页面右上角的“登录指令”,在弹出的页面中单击
复制登录指令。
图1 登录指令说明:
- 此处生成的登录指令有效期为6小时,若需要长期有效的登录指令,请参见获取长期有效登录或推拉镜像指令。获取了长期有效的登录指令后,在有效期内的临时登录指令仍然可以使用。
- 临时登录指令过期后需清除浏览器缓存后重新生成登录指令。
- 登录指令末尾的域名为镜像仓库地址,请记录该地址,后面会使用到。
- 在安装容器引擎的机器中执行上一步复制的登录指令。
- 在安装容器引擎的机器上执行如下命令,为nginx镜像打标签。
docker tag [镜像名称1:版本名称1] [镜像仓库地址]/[组织名称]/[镜像名称2:版本名称2]
其中,
- [镜像名称1:版本名称1]:请替换为您所要上传的实际镜像的名称和版本名称。
- [镜像仓库地址]:可在SWR控制台上查询,即2.b中登录指令末尾的域名。
- [组织名称]:请替换为您创建的组织。
- [镜像名称2:版本名称2]:请替换为您期待的镜像名称和镜像版本。
示例:
docker tag nginx:v1 swr.cn-east-3.myhuaweicloud.com/cloud-develop/nginx:v1
- 上传镜像至镜像仓库。
docker push [镜像仓库地址]/[组织名称]/[镜像名称2:版本名称2]
示例:
docker push swr.cn-east-3.myhuaweicloud.com/cloud-develop/nginx:v1
终端显示如下信息,表明上传镜像成功。
The push refers to repository [swr.cn-east-3.myhuaweicloud.com/cloud-develop/nginx:v1] fbce26647e70: Pushed fb04ab8effa8: Pushed 8f736d52032f: Pushed 009f1d338b57: Pushed 678bbd796838: Pushed d1279c519351: Pushed f68ef921efae: Pushed v1: digest: sha256:0cdfc7910db531bfa7726de4c19ec556bc9190aad9bd3de93787e8bce3385f8d size: 1780
返回容器镜像服务控制台,在“我的镜像”页面,执行刷新操作后可查看到对应的镜像信息。
containerd容器引擎客户端
常见问题
前提条件
操作步骤
- 登录容器镜像服务控制台。
- 在左侧导航栏选择“我的镜像”,单击右上角“页面上传”。
- 在弹出的窗口中选择组织,单击“选择镜像文件”,选择要上传的镜像文件。
说明:
多个镜像同时上传时,镜像文件会按照顺序逐个上传,不支持并发上传。
图2 上传镜像 - 单击“开始上传”。
待任务进度显示“上传完成”,表示镜像上传成功。
常见问题
docker容器引擎客户端
- 制作容器镜像或导入镜像文件
- 连接容器镜像服务。
- 登录容器镜像服务控制台。
- 选择左侧导航栏的“总览”,单击页面右上角的“登录指令”,在弹出的页面中单击
复制登录指令。
图1 登录指令说明:
- 此处生成的登录指令有效期为6小时,若需要长期有效的登录指令,请参见获取长期有效登录或推拉镜像指令。获取了长期有效的登录指令后,在有效期内的临时登录指令仍然可以使用。
- 临时登录指令过期后需清除浏览器缓存后重新生成登录指令。
- 登录指令末尾的域名为镜像仓库地址,请记录该地址,后面会使用到。
- 在安装容器引擎的机器中执行上一步复制的登录指令。
- 在安装容器引擎的机器上执行如下命令,为nginx镜像打标签。
docker tag [镜像名称1:版本名称1] [镜像仓库地址]/[组织名称]/[镜像名称2:版本名称2]
其中,
- [镜像名称1:版本名称1]:请替换为您所要上传的实际镜像的名称和版本名称。
- [镜像仓库地址]:可在SWR控制台上查询,即2.b中登录指令末尾的域名。
- [组织名称]:请替换为您创建的组织。
- [镜像名称2:版本名称2]:请替换为您期待的镜像名称和镜像版本。
示例:
docker tag nginx:v1 swr.cn-east-3.myhuaweicloud.com/cloud-develop/nginx:v1
- 上传镜像至镜像仓库。
docker push [镜像仓库地址]/[组织名称]/[镜像名称2:版本名称2]
示例:
docker push swr.cn-east-3.myhuaweicloud.com/cloud-develop/nginx:v1
终端显示如下信息,表明上传镜像成功。
The push refers to repository [swr.cn-east-3.myhuaweicloud.com/cloud-develop/nginx:v1] fbce26647e70: Pushed fb04ab8effa8: Pushed 8f736d52032f: Pushed 009f1d338b57: Pushed 678bbd796838: Pushed d1279c519351: Pushed f68ef921efae: Pushed v1: digest: sha256:0cdfc7910db531bfa7726de4c19ec556bc9190aad9bd3de93787e8bce3385f8d size: 1780
返回容器镜像服务控制台,在“我的镜像”页面,执行刷新操作后可查看到对应的镜像信息。
containerd容器引擎客户端
常见问题
前提条件
操作步骤
- 登录容器镜像服务控制台。
- 在左侧导航栏选择“我的镜像”,单击右上角“页面上传”。
- 在弹出的窗口中选择组织,单击“选择镜像文件”,选择要上传的镜像文件。
说明:
多个镜像同时上传时,镜像文件会按照顺序逐个上传,不支持并发上传。
图2 上传镜像 - 单击“开始上传”。
待任务进度显示“上传完成”,表示镜像上传成功。
常见问题