1、准备工作

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

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

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

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

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

如下图所示:

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

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

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

(1)创建命名空间

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

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

创建好的命名空间如下:

(2)创建容器镜像

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

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

说明:

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

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

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

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

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

所以我的理解:

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

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

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

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

如下:

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

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

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

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

    您可以在访问凭证页面修改凭证密码。

  2. Registry中拉取镜像。
    $ sudo docker pull registry.cn-beijing.aliyuncs.com/wukong6688/wukong_tomcat9:[镜像版本号]
  3. 将镜像推送到Registry
    $ 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。
    $ 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命令将该镜像推送至远程。

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

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

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

(1)登陆阿里云

# 输入第一行命令
[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(自定义)。

示例:

# 查看本地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

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

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

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

示例:

[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镜像仓库,然后点击左侧边栏的镜像版本,查看镜像信息。

如下:

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

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

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

示例:

# 查看本地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

『现学现忘』Docker基础 — 41、将本地镜像推送到阿里云的更多相关文章

  1. Docker 本地镜像推送到阿里云(五)

    最近在学习Docker,从安装Docker开始,到自定义制作镜像mycentos,但是怎么把它推送到阿里云,一直是困扰我的问题.后面有时间了解了一下,根据本地镜像推动到阿里云其实并没有我们想象中那么难 ...

  2. Docker安装常见的应用与将本地镜像推送到阿里云

    一.Docker安装常用的应用 1,docker安装mysql #拉取镜像mysql5.7 docker pull mysql:5.7 #启动容器(绑定对应的配置文件和日志,默认密码为123456) ...

  3. docker将镜像推送到阿里云

    1.背景 在实际生产中我们会经常把镜像推送到云端仓库......... 下面看具体操作 第一步:登录阿里云创建仓库 第二步:在docker上登录阿里云仓库 第三步:推送镜像到阿里云 第四步:在公网上查 ...

  4. 『现学现忘』Docker基础 — 40、发布镜像到Docker Hub

    目录 1.准备工作 2.Docker登陆命令 3.Docker提交命令 4.总结: 5.补充:docker tag命令 1.准备工作 Docker Hub地址:https://hub.docker.c ...

  5. 两种github action 打包.Net Core 项目docker镜像推送到阿里云镜像仓库

    两种github action 打包.Net Core 项目docker镜像推送到阿里云镜像仓库 1.GitHub Actions 是什么? 大家知道,持续集成由很多操作组成,比如抓取代码.运行测试. ...

  6. 『现学现忘』Docker基础 — 9、Docker简介

    目录 1.什么是Docker? 2.Docker的出现解决了什么问题? 3.Docker的特别之处 4.Docker相关网站 1.什么是Docker? 2010年dotCloud公司在旧金山成立,PA ...

  7. 『现学现忘』Docker基础 — 16、Docker中的基本概念和底层原理

    目录 1.Docker的底层原理 2.Docker中常用的基本概念 3.run命令的运行流程 4.为什么Docker比VM快 Docker架构图: 我们依照Docker架构图进行Docker基础概念的 ...

  8. 『现学现忘』Docker基础 — 26、Docker镜像分层的理解

    目录 1.分层的镜像 2.加深理解 3.特别说明 1.分层的镜像 我们可以去下载一个镜像,注意观察下载的日志输出,可以看到Docker的镜像是一层一层的在下载. 思考:为什么Docker镜像要采用这种 ...

  9. 『现学现忘』Docker基础 — 34、DockerFile文件详解

    目录 1.DockerFile文件说明 2.Dockerfile构建过程解析 (1)Docker容器构建三步骤 (2)Dockerfile文件的基本结构 (3)Dockerfile注意事项 (4)Do ...

随机推荐

  1. Elasticsearch上手指南

    目录 ElasticStack及Elasticsearch介绍 Elasticsearch安装 Elasticsearch入门 Elasticsearch配置 Elasticsearch REST A ...

  2. Xray学习

    Xray 目前支持的漏洞检测类型包括: XSS漏洞检测 (key: xss) SQL 注入检测 (key: sqldet) 命令/代码注入检测 (key: cmd-injection) 目录枚举 (k ...

  3. Nginx下载文件指定文件名称

    配置 location ^~/TEMP/ { alias/share/files/; if ($request_uri ~* ^.*\/(.*)\.(txt|doc|pdf|rar|gz|zip|do ...

  4. k8s client-go源码分析 informer源码分析(1)-概要分析

    k8s informer概述 我们都知道可以使用k8s的Clientset来获取所有的原生资源对象,那么怎么能持续的获取集群的所有资源对象,或监听集群的资源对象数据的变化呢?这里不需要轮询去不断执行L ...

  5. BUUCTF-Web:[GXYCTF2019]Ping Ping Ping

    题目 解题过程 1.题目页面提示?ip=,猜测是让我们把这个当做变量上传参数,由此猜想是命令注入 2.用管道符加上linux常用命令ls(windwos可以尝试dir)试试 所谓管道符(linux)的 ...

  6. 2.1 安装Linux系统对硬件有什么要求?

    很多初学者在安装 Linux 系统时,都对自己的电脑配置存在质疑,担心其是否能够满足安装 Linux 的要求.本节就从 CPU.内存.硬盘.显卡等这些方面,详细介绍一下安装 Linux 系统的最低配置 ...

  7. 实战|Hadoop大数据集群搭建

    一个执着于技术的公众号 前言 今天来为粉丝圆梦啦 话不多说,咱直接进入实战环节 实验环境: 主机名        IP地址                 角色 qll251       192.16 ...

  8. Linux screen命令详解

    开源Linux 长按二维码加关注~ 上一篇:局域网IP冲突罪魁祸首是谁? 很多时候,我们都需要执行一些需要很长时间的任务.如果这时候,你的网络连接突然断开了,那么你之前所做的所有工作可能都会丢失,所做 ...

  9. Android 12(S) 图像显示系统 - SurfaceFlinger GPU合成/CLIENT合成方式 - 随笔1

    必读: Android 12(S) 图像显示系统 - 开篇 一.前言 SurfaceFlinger中的图层选择GPU合成(CLIENT合成方式)时,会把待合成的图层Layers通过renderengi ...

  10. Linux磁盘和文件系统知识总结

    硬盘操作 为什么要给硬盘分区? 如果你需要在一块硬盘上用到多个文件系统,那么你就需要对硬盘进行分区,以便用不同的分区支持不同的文件系统.(但一个硬盘只能有一个分区表!)反过来说,如果你整块硬盘都用同样 ...