本文介绍Docker最常用的三个基本操作docker login、docker pull、docker push以及如何登录企业版实例。通过认识镜像的基本操作,您可以更熟练地使用容器镜像服务ACR。
背景信息
在使用容器镜像服务之前,需要先安装Docker。关于如何安装Docker,请参见:
docker login
以阿里云杭州地域企业版实例为例,说明如何登录Docker。
指明企业版实例域名,并输入您的用户名和登录密码。
登录成功之后会显示
Login Succeeded
。docker login <企业版实例名称>-registry.cn-hangzhou.cr.aliyuncs.com Username: ****@test.com Password: Login Succeeded
通过查看config.json文件,确认您的登录信息。
执行以下命令。
cat ~/.docker/config.json
预期输出如下。
{ "auths": { "<企业版实例名称>-registry.cn-hangzhou.cr.aliyuncs.com": { "auth": "****" } } }
docker pull
以镜像<企业版实例名称>-registry.cn-hangzhou.cr.aliyuncs.com/acs/agent:0.8
为例,下载镜像的命令如下所示:
执行以下命令。
docker pull <企业版实例名称>-registry.cn-hangzhou.cr.aliyuncs.com/acs/agent:0.8
预期输出如下。
0.8: Pulling from acs/agent
5a026b6c4964: Already exists
e4b621e8d9cb: Already exists
8bc2fd04bdd4: Pull complete
a977b0087b3e: Pull complete
8f6e00ea13c6: Pull complete
875dd8c9666f: Pull complete
9c07bcabc35d: Pull complete
Digest: sha256:cac848bd31bccf2a041bda7b57e3051341093abde6859df9ee9d332dfec6ddd9
Status: Downloaded newer image for <企业版实例名称>-registry.cn-hangzhou.cr.aliyuncs.com/acs/agent:0.8
登录的域名和您操作镜像的域名必须保持一致。例如只登录
<企业版实例名称> -registry.cn-hangzhou.cr.aliyuncs.com
的情况下,拉取和推送<企业版实例名称>-registry.cn-beijing.cr.aliyuncs.com
的镜像,客户端会出现未授权的错误信息。如果您要下载Docker官方的镜像,请参见订阅海外源镜像。
您可以执行docker images
命令查看已下载的镜像(注意仓库坐标和Tag)。
docker images
预期输出如下。
REPOSITORY TAG IMAGE ID CREATED SIZE
<企业版实例名称>-registry.cn-hangzhou.cr.aliyuncs.com/acs/agent 0.8 b9ba5841bdb0 24 hours ago 42.18 MB
docker push
镜像在本地环境构建或是打包完成之后,就可以上传到企业版实例中。
上传的准备工作和下载一致,需要确认您对这个仓库有相应的拉取权限,否则执行命令后您会看到下面的报错信息。
执行以下命令。
docker push <企业版实例名称>-registry.cn-hangzhou.cr.aliyuncs.com/acs/agent:0.8
预期输出如下。
The push refers to a repository [<企业版实例名称>-registry.cn-hangzhou.cr.aliyuncs.com/acs/agent:0.8]
359f80267111: Layer already exists
7e5fa28d90b8: Layer already exists
b20d7f600f63: Layer already exists
4a159b4f8370: Layer already exists
7c3712ebe877: Layer already exists
d91d130a53aa: Layer already exists
fcad8ad5a40f: Layer already exists
unauthorized: authentication required
使用RAM用户登录容器镜像服务企业版实例
使用RAM用户登录容器镜像服务控制台,在访问凭证页面设置登录密码。
使用
[RAM用户名]@[企业别名]
作为用户名进行登录。您可以在RAM控制台设置和查看阿里云账户的企业别名。如果没有企业别名,企业别名默认为阿里云账户的UID。
假设RAM用户名为
subaccount
,企业别名为account-alias
,则登录示例如下:docker login <企业版实例名称>-registry.cn-hangzhou.cr.aliyuncs.com Username: subaccount@account-alias Password: Login Succeeded