如何发布一个镜像到私有的docker仓库
  yyka2UPIbcp2 2023年11月02日 26 0

1拉取docker registry镜像

我们先启动docker服务,然后使用docKer pull registry拉取一个镜像到本地。

如何发布一个镜像到私有的docker仓库_私有仓库

2看看这个镜像多大

如何发布一个镜像到私有的docker仓库_docker_02

3启动registry

启动registry实际上就是启动一个容器,这个registry其实和hub.docker.com是一样的功能,只不过这个私有的registry是供给公司内部使用,不对外访问罢了。使用下面的命令就启动了registry服务(运行在一个容器中)。

# docker run -d -p 5000:5000 --restart always --name registry  registry:latest

如何发布一个镜像到私有的docker仓库_私有仓库_03

如何发布一个镜像到私有的docker仓库_centos_04

上面可以看到两个端口都是5000,简单说一下,一个是linux虚拟机也就是0.0.0.0:5000,这个5000是这个虚拟机本身的端口,第二个是5000是这个registry容器里的端口是5000.。容器的名称叫registry,使用的image是registry:latest  

4发布镜像到私有registry

4.1我的机器上有个centos6.8的镜像,我们要通过docker tag将该镜像标志为要推送到私有仓库

docker tag centos:6.8 127.0.0.1:5000/centos68

如何发布一个镜像到私有的docker仓库_私有仓库_05

4.2接下来,我们运行docker push将centos:6.8镜像push到我们的私有仓库中

如何发布一个镜像到私有的docker仓库_docker_06

4.3现在我们可以查看我们本地某个目录下已经有了刚推送上来的centos

我们也在浏览器中输入http://192.168.66.152:5000/v2/_catalog,正常返回如下数据

如何发布一个镜像到私有的docker仓库_docker_07

4.4现在我们可以先将我们本地的docker rmi 127.0.0.1:5000/centos68和docker rm  centos:6.8先删除掉

如何发布一个镜像到私有的docker仓库_docker_08

如何发布一个镜像到私有的docker仓库_docker_09

4.5然后使用docker pull从我们的私有仓库中获取hello-world镜像

如何发布一个镜像到私有的docker仓库_私有仓库_10

4.6问题来了,push到registry的镜像在哪呢?

我通过find找到了

如何发布一个镜像到私有的docker仓库_centos_11

为了防止默认的存放,在搭建的时候需要注意下:

Docker 官方提供了一个搭建私有仓库的镜像 registry ,只需把镜像下载下来,运行容器并暴露5000端口,就可以使用了。

docker pull registry:2

docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --name myregistry registry:2

Registry服务默认会将上传的镜像保存在容器的/var/lib/registry,我们将主机的/opt/registry目录挂载到该目录,即可实现将镜像保存到主机的/opt/registry目录了。

如何发布一个镜像到私有的docker仓库_docker_12

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论