`

【Docker学习教程系列】7-如何将本地的Docker镜像发布到阿里云

 
阅读更多

在上一篇中,我们使用docker commit 命令,创建了一个带有vim的Ubuntu镜像。那么怎么将这个镜像分享出去呢?本文就来讲解如何将本地的docker镜像发布到阿里云上。

本文主要内容:

1:本地镜像发布到阿里云流程

2:镜像的生成方法

3:将本地镜像推送到阿里云仓库

4:将阿里云仓库上的镜像下载到本地

1:本地镜像发布阿里云远程仓库流程:

拉取base镜像>>本地进行相关修改>>commit提交修改内容及tag>>使用命令(Dockerfile)将本地镜像提交到阿里云远程镜像仓库或者是私服镜像仓库中>>拉取远程仓库镜像>>修改。这个流程循环。具体如下图:

0d6997b6ed48ec6fab32f6a75a823035.png

2:镜像生成方法:

第一种方法就是 docker commit。使用commit命令生成本地镜像。这一个在上一篇commit实战中,已经详细讲解过,这里就不多说了。想要了解的请移步到:《Docker学习6-Docker镜像commit操作案例》,查看详情。

第二种方法,就是要使用到DockerFile了,这个也是我们以后会常用到的,这种方法,在后面高级篇中,会详细讲解,现在是在基础阶段,这里也不多少了,大家可以跟着凯哥一起一步一步学习。

2a5860e4dbc487aabb5590879e70fc39.png

3:将本地镜像推送到阿里云远程仓库

注意:是先有命名空间,然后才能创建仓库的。仓库是归属于某个命名空间下的。

3.1:在个人实例>>仓库管理>>命名空间>>创建命名空间。然后输入命名空间的名称即可。可以把这个命名空间理解为咱们Java中的包名。具体操作如下图:

72f0e73440396d735f976d974db6a1ae.png

创建完成之后,把可以把默认仓库类型设置为公开的。设置成公共的,这样在组内就是共享的,同组能人员就可以直接从远程拉取镜像了。如同咱们的git一样,提交阿里云远程仓库后,其他人也可以拉取一样的道理。

3.2:创建镜像仓库

3.2.1:选择命名空间

点左侧导航栏中的镜像仓库>>全部命名空间>>选择需要创建仓库的命名空间>>创建镜像仓库。如下图:

3a59a205b2ac8ea5a866a7622f74e20d.png

3.2.2:创建镜像仓库

选择好命名空间后,点击创建镜像仓库按钮>>在弹出窗口中输入仓库名称、仓库了下、摘要等信息.

7514aeb53380c92dbaf1bbe4ccec4b2b.png

注意,仓库名称有限制:长度为2-64个字符,可使用小写英文字母、数字,可使用分隔符“_”、“-”、“.”(分隔符不能在首位或末位)

点击下一步,之后是让选择代码的来源。

分为:CodeUp、云Code、GitHub、BitBucket、私有GitLab、本地仓库.非本地仓库的点击后,绑定账号之后,都可以在构建设置中,选择代码变更自动构建镜像功能。

c803efecba9f14fb30a2955580f7c9f4.png

因为本次,咱们是从本地仓库提交到阿里云远程仓库的,所以,咱们就选择本地仓库,然后点击创建镜像仓库。如下图:

803d8d3ac9df7e370f9ed85daf5a46d5.png

提交之后,我们可以看到有一堆的命令。先登录、可以从registry中拉取镜像、将镜像推送到Registry等命令。具体如下图:

d19cef5f120175d2fac41473c4555a92.png

本次,实战案例,我们是要将镜像推送到Registry上。所以,我们就选择3模块的三条命令即可。

4:将本地镜像推送到阿里云远程仓库

通过上面第三步骤,我们已经获取到将本地镜像推送的阿里云远程仓库的命令了。接下来,我们就来进行实战操作。

获取到提交阿里云远程仓库的脚本:

 docker login --username=修改成你自己的账号 registry.cn-hangzhou.aliyuncs.com

 docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/kaigejava/my_kaigejava:[镜像版本号]

 docker push registry.cn-hangzhou.aliyuncs.com/kaigejava/my_kaigejava:[镜像版本号]

根据上面三个命令我们根据操作,可以得到下:

a3971cf066e59e5acf14386346460d90.png

5:将阿里云远程仓库上的镜像下载到本地

使用到的命令,在上面第三步中也能获取到。

步骤:

1:登录;2:从Registry中拉取镜像。直接从页面中复制对应的命令即可。

2f0bdf3610adbdd3d98268b3edef9212.png

拉取前,我们先来看看,现在我们本地已经有的镜像,使用:docker images命令

50e7b30bb37e8c40c556c95c096b7eab.png

执行从远程拉取镜像命令:

命令公式:

docker pull registry.cn-hangzhou.aliyuncs.com/kaigejava/my_kaigejava:[镜像版本号]

2e3f5c19edc8ef2053991a4ccd05aeb4.png

拉取完成之后,我们再来查查本地现有的镜像,来验证是否拉取成功。

014b3e7b869ec5e1e986ba193defb3b4.png

我们可以看到,已经有我们提交的阿里云远程仓库镜像了。说明,本地拉取成功。

拉取下来之后,我们来运行下镜像,验证,我们在上一篇文章中添加的vim命令是否已经存在这个镜像中。使用到的命令公式:

docker run -it 镜像id /bin/bash 

34285787bb90b222efd6885340c43184.png

vim命令可以正常使用了。说明,从远处拉取到的镜像已经包含了添加的vim命令。

好了,至此,我们已经将本地镜像提交到阿里云远程仓库及从远程仓库拉取镜像操作了。在下一篇文章中,凯哥将详细介绍,怎么将本地仓库提交到本地私服上去。

 

直通车,本系列教程已发布文章,快速到达,《Docker学习系列》教程已经发布的内容如下:

【图文教程】Windows11下安装Docker Desktop

【填坑】在windows系统下安装Docker Desktop后迁移镜像位置

【Docker学习系列】Docker学习1-docker安装

【Docker学习系列】Docker学习2-docker设置镜像加速器

【Docker学习系列】Docker学习3-docker的run命令干了什么?docker为什么比虚拟机快?

【Docker学习系列】Docker学习2-常用命令之启动命令和镜像命令

【Docker学习系列】Docker学习系列3:常用命令之容器命令

【Docker学习系列】Docker学习4-常用命令之重要的容器命令

【Docker教程系列】Docker学习5-Docker镜像理解

【Docker教程系列】Docker学习6-Docker镜像commit操作案例

【Docker学习教程系列汇总】笔记及遇到问题解决文章

 

大家好,我是凯哥Java(kaigejava),乐于分享,每日更新技术文章,欢迎大家关注“凯哥Java”,及时了解更多。让我们一起学Java

 

分享到:
评论

相关推荐

    docker-wnameless-oracle-xe-11g百度盘地址.zip

    docker oracle的离线镜像docker-wnameless-oracle-xe-11g.tar,可以导入到内网(无互联网)环境使用,该包是基于wnameless的Oracle打包的,由于网速慢,我是使用 git clone ...

    如何给Docker配置官方国内加速镜像

    为了快速访问 Docker 官方镜像都会配置三方加速器,目前常用三方加速器有: 网易 、 USTC 、 DaoCloud 、 阿里云 。 现在 Docker 官方针对中国区推出了镜像加速服务。通过 Docker 官方镜像加速,国内用户能够以更快...

    nginx-1.24.0 docker镜像

    资源包含Dockerfile文件,可以直接构建自己的nginx镜像

    Java开发环境Docker镜像:OpenJDK基础与阿里云Ubuntu源优化

    它包含了对阿里云Ubuntu镜像源的优化设置,旨在提升软件包管理和安装速度。适用人群:适合需要快速配置Java开发环境的开发人员,尤其是在中国地区,希望利用本地镜像源加速开发设置的用户。使用场景及目标:此镜像...

    Docker配置阿里云镜像加速pull的实现

    今天使用docker拉取镜像,那速度简直不能看,而且等着等着到最后还出现了 read tcp 192.168.31.60:55550->104.18.123.25:443: read: connection reset by peer 传输异常 然后看见网上说可以配置阿里云提供的镜像...

    docker hub 官方oracle12c镜像 docker-compose 编排

    离线镜像文件大概有3个多G,存放在百度云上面,下面附上我们总结在window10 上和centos 上面创建docker for oracle 12c 容器的经验内容,坑过多少坑了。再也不需要使用安装版的oracle 。 具体: store/oracle/...

    32-CentOS7安装Docker并配置国内镜像并构建RabbitMQ镜像1

    整个过程中,我们将使用阿里云的 Docker 镜像加速器,以加快镜像的拉取速度。 安装 Docker 首先,我们需要安装 Docker。使用以下命令安装 Docker: `yum install docker` 在安装完成后,我们可以使用以下命令来...

    云原生Docker和K8S 01-Docker基础

    5. 配置镜像加速:使用阿里云镜像加速配置,以避免 Docker 从外网拉取镜像。 Docker 的基础命令: 1. docker version:查看 Docker 的版本信息。 2. docker ps:查看当前运行的容器。 3. docker run:启动一个新的...

    2021-12-057学习记录(docker镜像push阿里云)1

    2. 从Registry中拉取镜像$ docker pull registry.cn-hangzhou.aliyuncs.com/bjy_image01/myc

    docker容器内执行apt-get update命令时很慢的解决办法

    docker容器内安装软件时很慢的解决办法,用网易加速和阿里云加速提升软件安装的速度,安装ps,vi,telnet,netstat等命令,亲测!

    podman修改阿里docker镜像.docx

    podman修改阿里docker镜像方法。可以提高访问速度。网上很多方法都不好用。这个方法亲测好用。

    docker环境搭建文档

    阿里云提供了 Docker 镜像加速服务,可以加速 Docker 的安装和使用。 ### Docker-compose 的安装 Docker-compose 是一个用于定义和运行多容器 Docker 应用程序的工具。它可以让你轻松地管理多个容器。 安装 ...

    33_Docker_本地镜像推送到阿里云.avi

    33_Docker_本地镜像推送到阿里云

    docker-26.1.3.zip

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中

    jenkins-docker环境构建镜像上传仓库1

    ##背景:jenkins部署在容器中,无法利用docker执行操作,通过ssh将jar包和当前路径下的dockerfile推送到指定服务器目录上,使用脚本进行构

    Docker视频教程.txt

    P1212_Docker镜像操作命令 P1313_Docker容器操作基本命令 P1414_Docker容器操作进阶命令 P1515_Docker容器宿主机端口映射 P1616_Docker commit提交运行时容器成为镜像 P1717_推送镜像到hub服务器 P1818_推送...

    docker安装skywalking+mysql

    设置Docker的yum源,添加阿里云的Docker CE仓库,列出所有可用版本并选择安装。启动Docker服务并使其在开机时自动启动,最后验证Docker是否安装成功。 接下来是安装MySQL。创建必要的目录,如日志、数据和配置...

    java8 的docker镜像,支持私网部署

    java8 的docker镜像,支持私网部署

    Docker之自定义镜像上传至阿里云

    Docker之自定义镜像上传至阿里云

Global site tag (gtag.js) - Google Analytics