Docker详解(九)——Docker镜像发布

今天继续给大家介绍Linux运维相关知识,本文主要内容是Docker镜像发布。

一、Docker镜像发布简介

在上文Docker详解(八)——Docker镜像制作中,我们介绍了Docker镜像的制作,今天,我们来介绍一下Docker镜像的发布。
在上文的基础上,当我们完成了Docker镜像的制作后,我们希望可以把我们的Docker镜像保存下载,然后移植到别的设备上运行。为了实现这一目的,我们就必须实现Docker镜像的发布或者是导出。
Docker镜像有两种发布方式,一种是将Docker镜像导出成tar包,然后在其他的设备上,只需要将该tar包导入即可;另一种方式是在Dockerhub上建立自己的Docker仓库,然后其他的设备就可以从Dockerhub仓库下载并使用了。接下来,我就介绍并实现一下这两种方式。

二、Docker镜像导出

首先,我们尝试一下将Docker镜像导出。
Docker镜像导出的命令需要使用save和-o参数,save表示对镜像进行导出,-o参数后面跟要导出的tar包文件名,其命令格式为:

docker save -o 【tar包文件名】 【镜像名】

例如,如果要把docker.io/centos:latest镜像导出,可以执行命令:

docker save -o docker-test.tar docker.io/centos:latest

该命令执行结果如下:
Docker详解(九)——Docker镜像发布_第1张图片
可以看出,该命令执行后,在本地生成了一个名为docker-test.tar的文件,接下来,我们删除原镜像,尝试把该tar包镜像导入。镜像的导入需要使用load和-i参数,load参数表示进行镜像导入,-i参数指定导入镜像的tar包名称,该命令格式如下:

docker load -i 【tar包】

下面,我们把刚刚的tar包镜像导入,执行命令:

docker load -i docker-test.tar

该命令执行结果如下:

三、Docker镜像发布至Dockerhub

接下来,我们尝试把Docker镜像发布至Dockerhub。
将Docker镜像发布到Dockerhub的前提和基础是在Dockerhub上有账号,并且建立了自己的Docker仓库。
登录https://hub.docker.com/,先注册申请一个自己的账号,然后创建一个自己的Docker仓库,如下所示:
Docker详解(九)——Docker镜像发布_第2张图片
输入仓库的名称(我的是docker-test)后,点击Create,就可以完成仓库的创建,创建完成后的仓库如下所示:
Docker详解(九)——Docker镜像发布_第3张图片

注意看上图,在右边有Docker仓库发布的提示命令。
接下来,我们登录我们的Dockerhub,执行命令:

docker login -u 【用户名】 -p 【密码】

该命令执行结果如下:
在这里插入图片描述
接下来,我们要有其注意,我们发布镜像的名称有严格的规范,如果不符合这个规范,镜像就有可能发布失败。镜像的名称必须是“用户名/仓库名”的格式。如果当前没有该格式的镜像,那么我们可以使用docker tag命令生成一个Docker镜像。docker tag命令格式如下:

docker tag 【原镜像名】 【新的镜像名】

这样,我们把Docker镜像改成符合我们的Docker仓库的格式,之后,我们执行命令:

docker push 【镜像名】

执行过程如下所示:
Docker详解(九)——Docker镜像发布_第4张图片
注意,只要出现上面的上传页面,就代表成功,但是如果中间因为网络的原因中断,那么只需要再次执行该命令即可。上算完成后的页面如下:
Docker详解(九)——Docker镜像发布_第5张图片

这时,我们也可以在Dockerhub上查看到我们上传的镜像信息,如下所示:
Docker详解(九)——Docker镜像发布_第6张图片
之后,我们还可以把我们的镜像信息拉取下来,如下所示:

原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

你可能感兴趣的:(虚拟化运维,Docker,镜像,镜像发布,Linux,运维)