Docker--镜像推送至阿里云

自定义镜像发布到阿里云Docker仓库

Posted by Woods on June 9, 2019

1. 登录阿里云镜像仓库

https://cr.console.aliyun.com/cn-beijing/instances/repositories

2. 创建命名空间

左侧菜单栏 -> 命名空间 -> 创建命名空间

3. 创建镜像仓库

左侧菜单栏 -> 镜像仓库 -> 创建镜像仓库

  1. 填写仓库信息
  2. 代码源:选择本地仓库。

4. 本地镜像推送至阿里云

点击刚创建的镜像仓库右侧的管理按钮。

会显示操作指南,按步骤操作即可。

  1. 登录阿里云Docker Registry
    1
    
    $ sudo docker login --username=wsjwoods555@163.com registry.cn-beijing.aliyuncs.com
    

    用于登录的用户名为阿里云账号全名,密码为开通服务时设置的密码。

您可以在产品控制台首页修改登录密码。

  1. 从Registry中拉取镜像
    1
    
    $ sudo docker pull registry.cn-beijing.aliyuncs.com/wsjwoods/mycentos:[镜像版本号]
    
  2. 将镜像推送到Registry
    1
    2
    3
    
    $ sudo docker login --username=wsjwoods555@163.com registry.cn-beijing.aliyuncs.com
    $ sudo docker tag [ImageId] registry.cn-beijing.aliyuncs.com/wsjwoods/mycentos:[镜像版本号]
    $ sudo docker push registry.cn-beijing.aliyuncs.com/wsjwoods/mycentos:[镜像版本号]
    

    请根据实际镜像信息替换示例中的[ImageId]和[镜像版本号]参数。

  3. 选择合适的镜像仓库地址 从ECS推送镜像时,可以选择使用镜像仓库内网地址。推送速度将得到提升并且将不会损耗您的公网流量。

如果您使用的机器位于VPC网络,请使用 registry-vpc.cn-beijing.aliyuncs.com 作为Registry的域名登录,并作为镜像命名空间前缀。

  1. 示例 使用”docker tag”命令重命名镜像,并将它通过专有网络地址推送至Registry。
    1
    2
    3
    4
    
    $ sudo docker images
    REPOSITORY                                                         TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
    registry.aliyuncs.com/acs/agent                                    0.7-dfb6816         37bb9c63c8b2        7 days ago          37.89 MB
    $ sudo docker tag 37bb9c63c8b2 registry-vpc.cn-beijing.aliyuncs.com/acs/agent:0.7-dfb6816
    

    使用”docker images”命令找到镜像,将该镜像名称中的域名部分变更为Registry专有网络地址。

    1
    
    $ sudo docker push registry-vpc.cn-beijing.aliyuncs.com/acs/agent:0.7-dfb6816
    

欢迎访问个人博客:Woods Blog