0


Docker镜像仓库

前言

Docker镜像仓库简单来说就是存储和管理Docker镜像的平台或服务。它允许开发人员上传自己创建的镜像,并与团队成员共享和协作使用。

1. 常见的镜像仓库

镜像仓库有公共的和私有的两种形式:

  • 公共仓库:允许用户下载别人发布的镜像或者上传自己的镜像,例如国外Docker官方的DockerHub,国内也有网易云镜像服务,DaoCloud镜像服务,阿里云镜像服务等。
  • 私有仓库:提供了更高的安全性和控制,例如用户自己搭建的本地私有Docker Registry。企业自己的镜像存放库等。

2. 搭建私有镜像仓库

可以参考我的CentOS7安装Docker里面的图形化界面版本的详细操作。

3. 私有库的推送、拉取镜像

在搭建好自己的图形化私有库之后,访问http://我的虚拟机IP:8080/,就可以看到,我这里暂时还没有上传镜像:

接下来,我会以之前下载的nginx镜像为例,演示如何上传镜像到私有库和从私有库拉取镜像的操作:

推送镜像到私有镜像库之前必须tag,那么tag命令究竟是什么呢?

我们可以用docker tag --help命令来看看,这个命令是用来干什么的:

看这里我们可以知道,docker tag命令是来创建一个新的镜像标签,这个新的标签指向已有的镜像。这样方便我们通过这样的标识来识别和管理镜像。

接下来,我们来用进行镜像的拉取和推送,步骤如下:

1)重新tag本地镜像,名称前缀为私有仓库的地址:我的虚拟机IP:8080/,你们根据自己的情况来命名:

docker tag nginx:latest 我的虚拟机IP:8080/nginx:1.0 

结果如下:

我们可以看到打上tag标签的镜像跟原来的nginx镜像的镜像ID完全一致,说明这并不是一个新的镜像,而是原来的那个镜像。

2)将镜像推送到私有库

docker push 我的虚拟机IP:8080/nginx:1.0 

结果如下:

这里可以看见,docker根据我们的tag标签,找到了我们自己搭建的私有库的地址,然后推送上去。我们访问一下私有库地址:http://虚拟机IP:8080/,就可以看到:

这里多了一个刚刚push上去的nginx镜像。点进去,可以看到镜像的大小以及tag的版本号:

3)从私有库拉取镜像

在拉去镜像前,我们下把本地已经下载好的nginx两个镜像删除:

可以看到,我的本地已经完全没有nginx的任何镜像了。

接下来,我们通过下面命令,从私有库上面拉取镜像:

docker pull 虚拟机IP:8080/nginx:1.0

结果如下:

然后,通过docker images命令查看一下都有哪些镜像:

这里显示,我们已经成功从私有库拉取镜像了。

4. 总结

接下来,我们总结一下,拉取镜像的重要步骤:

  1. 推送本地镜像到仓库前必须重命名(docker tag)镜像,以镜像仓库地址为前缀
  2. 镜像仓库推送前需要把仓库地址配置到docker服务的deamon.json文件中,被docker信任(这一步在搭建私有库里面有)
  3. 推送镜像使用docker push命令
  4. 拉取镜像使用docker pull命令
标签: docker linux 运维

本文转载自: https://blog.csdn.net/biyifengfei/article/details/140855780
版权归原作者 我欲扶摇九万里 所有, 如有侵权,请联系我们删除。

“Docker镜像仓库”的评论:

还没有评论