1拉取docker registry镜像
我们先启动docker服务,然后使用docKer pull registry拉取一个镜像到本地。
2看看这个镜像多大
3启动registry
启动registry实际上就是启动一个容器,这个registry其实和hub.docker.com是一样的功能,只不过这个私有的registry是供给公司内部使用,不对外访问罢了。使用下面的命令就启动了registry服务(运行在一个容器中)。
# docker run -d -p 5000:5000 --restart always --name registry registry:latest
上面可以看到两个端口都是5000,简单说一下,一个是linux虚拟机也就是0.0.0.0:5000,这个5000是这个虚拟机本身的端口,第二个是5000是这个registry容器里的端口是5000.。容器的名称叫registry,使用的image是registry:latest
4发布镜像到私有registry
4.1我的机器上有个centos6.8的镜像,我们要通过docker tag将该镜像标志为要推送到私有仓库
4.2接下来,我们运行docker push将centos:6.8镜像push到我们的私有仓库中
4.3现在我们可以查看我们本地某个目录下已经有了刚推送上来的centos
我们也在浏览器中输入http://192.168.66.152:5000/v2/_catalog,正常返回如下数据
4.4现在我们可以先将我们本地的docker rmi 127.0.0.1:5000/centos68和docker rm centos:6.8先删除掉
4.5然后使用docker pull从我们的私有仓库中获取hello-world镜像
4.6问题来了,push到registry的镜像在哪呢?
我通过find找到了
为了防止默认的存放,在搭建的时候需要注意下:
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目录了。
标签:容器,5000,私有,registry,镜像,docker From: https://blog.51cto.com/u_16031739/7146690