• docker本地镜像推送到阿里云


    本地准备好镜像

    从上图可知,镜像的生成无非三种方式:

    • 由dockerfile文件build
    • 由容器commit
    • 从远程仓库pull

    这里准备push的镜像是之前安装了vim和telnet的centso镜像:

    [root@izbp13m488196e5hna361rz ~]# docker images mycentos
    REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
    mycentos     1.0       3b0cb5ffbc9f   4 weeks ago   281MB

    在阿里云控制台创建镜像仓库

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

    创建好镜像仓库之后,点进去就可以看到仓库的地址和相关操作指南:

    按照操作指南将镜像推送到镜像仓库

    1.登录

    docker login --username=shuqiaona1991 registry.cn-shenzhen.aliyuncs.com

    [root@izbp13m488196e5hna361rz ~]# docker login --username=shuqiaona1991 registry.cn-shenzhen.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.将镜像上传到私有注册中心之前,需要给镜像重命名

    docker tag [ImageId] registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos:[镜像版本号]

    [root@izbp13m488196e5hna361rz ~]# docker images mycentos
    REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
    mycentos     1.0       3b0cb5ffbc9f   4 weeks ago   281MB
    [root@izbp13m488196e5hna361rz ~]# docker tag 3b0cb5ffbc9f registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos:1.0.0

    注意,这里重命名后,两个镜像都会存在,且容器ID是同一个:

    ps:docker tag 也常用于给镜像打标签,记录版本号:

    [root@izbp13m488196e5hna361rz ~]# docker images son
    REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
    son          latest    9d087b204a81   2 weeks ago   241MB
    [root@izbp13m488196e5hna361rz ~]# docker tag son son:1.0
    [root@izbp13m488196e5hna361rz ~]# docker tag son son:2.0
    [root@izbp13m488196e5hna361rz ~]# docker images son
    REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
    son          1.0       9d087b204a81   2 weeks ago   241MB
    son          2.0       9d087b204a81   2 weeks ago   241MB
    son          latest    9d087b204a81   2 weeks ago   241MB

    3.在本地将镜像推送

    docker push registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos:[镜像版本号]

    [root@izbp13m488196e5hna361rz ~]# docker push registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos:1.0.0
    The push refers to repository [registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos]
    3a2579d8936d: Pushed 
    ba779d07444c: Pushed 
    2653d992f4ef: Pushed 
    1.0.0: digest: sha256:3392e34214e3d4ec02c5c8639652b6d4e1d7d96f0564012f8c57260e3806e742 size: 952

    4.阿里云查看已推送镜像

    在镜像中心 -- 镜像搜索 中通过镜像仓库或者命名空间搜索:

    点进去查看详情,其中有对应的下载地址,方便pull提取:

    5.将阿里云的新镜像提取到本地,运行容器验证

    为了避免重复,先删除本地原有的:

    [root@izbp13m488196e5hna361rz ~]# docker rmi -f registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos:1.0.0
    Untagged: registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos:1.0.0
    Untagged: registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos@sha256:3392e34214e3d4ec02c5c8639652b6d4e1d7d96f0564012f8c57260e3806e742

    远程拉取镜像:

    [root@izbp13m488196e5hna361rz ~]# docker pull registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos:1.0.0
    1.0.0: Pulling from nick0922/nick_centos
    Digest: sha256:3392e34214e3d4ec02c5c8639652b6d4e1d7d96f0564012f8c57260e3806e742
    Status: Downloaded newer image for registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos:1.0.0
    registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos:1.0.0

    根据registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos:1.0.0创建容器,并验证:

    root@izbp13m488196e5hna361rz ~]# docker run -it registry.cn-shenzhen.aliyuncs.com/nick0922/nick_centos:1.0.0
    [root@b5067d3f4abd local]# which vim
    /usr/bin/vim
    [root@b5067d3f4abd local]# which telnet
    /usr/bin/telnet

    容器可以使用vim和telnet,验证成功。

  • 相关阅读:
    常用坐标系椭球参数整理
    ArcEngine编辑保存错误:Unable to create logfile system tables
    ArcEngine:The XY domain on the spatial reference is not set or invalid错误
    dockManager中DockPanel的刷新问题!
    ibatis实现Iterate的使用
    mongodb用子文档做为查询条件的两种方法
    Eclipse中的文件导航插件StartExplorer
    mongoVUE的增删改查操作使用说明
    什么是脏读,不可重复读,幻读
    转:Maven常用命令
  • 原文地址:https://www.cnblogs.com/xulan0922/p/14501028.html
Copyright © 2020-2023  润新知