Docker创建私有仓库

一、简介

在 Docker 中,当我们执行 docker pull xxx 的时候 ,它实际上是从 registry.hub.docker.com 这个地址去查找,这就是Docker公司为我们提供的公共仓库。在工作中,我们不可能把企业项目push到公有仓库进行管理。所以为了更好的管理镜像,Docker不仅提供了一个中央仓库,同时也允许我们搭建本地私有仓库。这一篇介绍registry、harbor两种私有仓库搭建。

二、registry 的搭建

1. 搭建

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

docker pull registry

mkdir –p /usr/local/registry

docker run -d -p 5000:5000 --name docker-registry -v /usr/local/registry:/tmp/registry registry

-d 表示后台模式运行

-p 5000:5000 表示将容器的5000端口映射到宿主机的5000端口
–name 表示为当前容器指定名称
-v 表示将宿主机的/usr/local/registry 挂载到容器/tmp/resgistry

容器正常启动,对外提供服务通过5000端口映射到docker-registry的5000端口;

curl http://127.0.0.1:5000/v2/_catalog

收到的响应如下,是个json对象,其中repositories对应的值是空的json数组,表示目前仓库里还没有镜像:

{“repositories”:[]}

 

2. 验证

先拉个nginx:latest镜像下来

docker pull nginx:lastes
docker images

 

 要通过docker tag将该镜像标志为要推送到私有仓库:

docker tag nginx:latest localhost:5000/nginx:latest
docker push localhost:5000/nginx:latest
curl http://localhost:5000/v2/_catalog

 

posted @ 2021-05-19 19:05  kldx5092  阅读(66)  评论(0编辑  收藏  举报