• 『现学现忘』Docker基础 — 41、将本地镜像推送到阿里云


    1、准备工作

    (1)创建阿里云平台账号

    阿里云官网地址:https://www.aliyun.com/

    淘宝、支付宝账号可复用,这里不做过多说明了。

    (2)找到容器镜服务界面

    在阿里云官网主页,产品 —> 容器与中间件 —> 容器镜像服务ACR —> 管理控制台。

    如下图所示:

    image

    进入到阿里云容器镜像服务界面如下:

    image

    我们之前说过镜像加速器,今天我们来说说阿里云容器镜像仓库。

    2、阿里云容器镜像仓库的使用

    (1)创建命名空间

    点击左侧边栏的命名空间,再点击右上角创建命名空间,然后在弹出的对话对话框中,输入自定义命名空间的名称。

    image

    注意:一个账号最多可以创建3个命名空间。

    创建好的命名空间如下:

    image

    (2)创建容器镜像

    点击左侧边栏的镜像仓库,再点击创建镜像仓库。

    在弹出的界面中输入镜像仓库的信息如下:

    image

    说明:

    • 地域:自己选择一个就好。
    • 命名空间:选择自己设置的,没有可以点击进行设置。
    • 仓库名称:自定义即可。
    • 仓库类型:私有只自己可访问,公有其他人也可以访问。(私有即可)
    • 摘要:就是对该仓库的一个简要说明。

    点击下一步,然后选择本地仓库,最后点击创建镜像仓库。

    image

    之后就可以看到我们创建的阿里云镜像仓库了。

    image

    重点说一下(重点,重点)

    我理解阿里云镜像仓库,存放镜像的目录如下:公网地址/命名空间/仓库:版本号

    所以我的理解:

    • 命名空间:是用来存放镜像的目录。
    • 而镜像仓库就相当于镜像名,一个镜像仓库仓库只存储一个镜像,和这个镜像的不同版本。

    即:以后在阿里云镜像仓库创建镜像命名的时候,建议以软件包名或应用名作为仓库名称

    (3)查看阿里云镜像仓库的信息

    点击仓库名称位置或者后边的管理,就能够看到我们刚刚创建的阿里云镜像仓库的详细信息。

    如下:

    image

    说明:公网地址就是,可以通过该地址访问到这个仓库。

    下面是对阿里云镜像仓库的操作指南:

    1. 登录阿里云Docker Registry
      shell
      $ sudo docker login --username=aliyuelin registry.cn-beijing.aliyuncs.com
      用于登录的用户名为阿里云账号全名,密码为开通服务时设置的密码。
      您可以在访问凭证页面修改凭证密码。
    2. Registry中拉取镜像。
      shell
      $ sudo docker pull registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9:[镜像版本号]
    3. 将镜像推送到Registry
      shell
      $ sudo docker login --username=aliyuelin registry.cn-beijing.aliyuncs.com
      $ sudo docker tag [ImageId] registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9:[镜像版本号]
      $ sudo docker push registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9:[镜像版本号]
      请根据实际镜像信息替换示例中的[ImageId][镜像版本号]参数。
    4. 选择合适的镜像仓库地址。
      ECS推送镜像时,可以选择使用镜像仓库内网地址。推送速度将得到提升并且将不会损耗您的公网流量。
      如果您使用的机器位于VPC网络,请使用registry-vpc.cn-beijing.aliyuncs.com作为Registry的域名登录。
    5. 示例
      使用docker tag命令重命名镜像,并将它通过专有网络地址推送至Registry。
      shell
      $ 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 push命令将该镜像推送至远程。
      shell
      $ sudo docker push registry-vpc.cn-beijing.aliyuncs.com/acs/agent:0.7-dfb6816

    3、将本地Docker镜像推送到阿里云

    我们就按照上面操作文档的第三步进行操作,将本地Docker镜像推送到阿里云镜像仓库。

    (1)登陆阿里云

    shell
    # 输入第一行命令
    [root@192 ~]# docker login --username=aliyuelin registry.cn-beijing.aliyuncs.com
    Password:
    WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
    Configure a credential helper to remove this warning. See
    https://docs.docker.com/engine/reference/commandline/login/#credentials-store
    
    Login Succeeded

    (2)给镜像生成版本号

    命令:sudo docker tag [ImageId] registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9:[镜像版本号]

    说明:

    • [ImageId]:输入你本地将要上传镜像的Image Id。
    • [镜像版本号]:Docker镜像的TAG(自定义)。

    示例:

    shell
    # 查看本地Docker镜像
    [root@192 ~]# docker images
    REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
    diytomcat9   latest    12988584a30e   16 hours ago   607MB
    centos       latest    300e315adb2f   3 months ago   209MB

    给上传镜像生成一个版本号。

    image

    (3)推送本地镜像到阿里云镜像仓库

    执行命令:$ sudo docker push registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9:[镜像版本号]

    示例:

    shell
    [root@192 ~]# docker push registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9:1.8
    The push refers to repository [registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9]
    b4ef62e90bac: Pushed
    5da8b73f85d7: Pushed
    68a0171f3cc4: Pushed
    76f4ae6e5125: Pushed
    2653d992f4ef: Pushed
    1.8: digest: sha256:4752b493708372b50f4169eee3df449caef050fc18e604849f584e49d554bbab size: 1373
    [root@192 ~]#

    可以看到,向阿里云镜像仓库推送镜像的时候,也是按照镜像的层级来进行推送的。

    4、在阿里云中查看本地推送的镜像

    在阿里云官网主页,产品 —> 容器与中间件 —> 容器镜像服务ACR —> 管理控制台。

    然后镜像仓库列表中,点击wukong_tomcat9镜像仓库,然后点击左侧边栏的镜像版本,查看镜像信息。

    如下:

    image

    5、从阿里云镜像库拉取镜像到本地

    按照上面操作文档的第二步进行操作。

    执行命令:sudo docker pull registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9:[镜像版本号]

    示例:

    shell
    # 查看本地Docker镜像
    [root@192 ~]# docker images
    REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
    centos       latest    300e315adb2f   3 months ago   209MB
    
    # 从阿里云镜像库拉取镜像
    [root@192 ~]# docker pull registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9:1.8
    1.8: Pulling from wukong6688/wukong_tomcat9
    7a0437f04f83: Already exists
    ebca8570a55c: Already exists
    52613dee4841: Already exists
    f20d670a00b6: Already exists
    1d6b94f6dacc: Already exists
    Digest: sha256:4752b493708372b50f4169eee3df449caef050fc18e604849f584e49d554bbab
    Status: Downloaded newer image for registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9:1.8
    registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9:1.8
    
    # 再次查看本地Docker镜像
    [root@192 ~]# docker images
    REPOSITORY                                                   TAG       IMAGE ID       CREATED        SIZE
    registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9   1.8       12988584a30e   21 hours ago   607MB
    centos                                                       latest    300e315adb2f   3 months ago   209MB
    

    __EOF__

  • 本文作者: 繁华似锦的博客
  • 本文链接: https://www.cnblogs.com/liuyuelinfighting/p/16426473.html
  • 关于博主: 评论和私信会在第一时间回复。或者直接私信我。
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
  • 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。
  • 相关阅读:
    grunt构建
    Blazor前后端框架Known-V1.2.15
    大数据知识
    把Open Folder as PyCharm Project添加到右键菜单打开文件夹
    搜索系统中的文本相关性实践经验
    SpringBoot解决跨域问题的六种方式
    【DETR源码解析】二、Backbone模块
    游戏服务器开发指南(七):资源流通保证先减后增的顺序
    MySQL:数据库的物理备份和恢复-冷备份(3)
    【无标题】
  • 原文地址:https://www.cnblogs.com/liuyuelinfighting/p/16426473.html