在 Docker 中,当我们执行 docker pull xxx 的时候 ,它实际上是从 registry.hub.docker.com 这个地址去查找,这就是Docker公司为我们提供的公共仓库。在工作中,我们不可能把企业项目push到公有仓库进行管理。所以为了更好的管理镜像,Docker不仅提供了一个中央仓库,同时也允许我们搭建本地私有仓库。这一篇介绍docker私有仓库的建立。
一、registry和harbor
registry只是纯字符集仓库,harbor是有自己的界面的
harbor的存放位置就是registry,registry只是harbor的一个组件
harbor由8个容器组成,其中一个就是registry
docker images 保存的位置
[root@localhost ~]# cd /var/lib/docker/image/
[root@localhost image]# ls
overlay2
建立私有仓库
[root@localhost ~]# docker pull registry 直接下载
[root@localhost ~]# vim /etc/docker/daemon.json
“insecure-registries”:[“192.168.133.101:5000”], 第二行增加此句
[root@localhost ~]# systemctl restart docker
[root@localhost ~]# docker run -d -p 5000:5000 -v /data/registry:/tmp/registry registry
824be90701645f27f8b90b50d0cb5f985c189ef9b452c8c8741ae1c6beed4fbc
-d 守护进程 -p 指定端口 -v设定挂载目录 最后一个registry 启动仓库
查看仓库内的镜像,目前为空
[root@localhost ~]# curl -XGET http://192.168.133.101:5000/v2/_catalog
{“repositories”:[]}
#v2是版本 _catalog是查看数据
把本地镜像推送到仓库内
不能直接推送,必须先打标记
[root@localhost ~]# docker tag nginx:v4 192.168.133.101:5000/nginx
默认是根
上传镜像
[root@localhost ~]# docker push 192.168.133.101:5000/nginx
从私有仓库下载
先移出原镜像
root@localhost ~]# docker rmi 192.168.133.101:5000/nginx
从私有仓库下载镜像
[root@localhost ~]# docker pull 192.168.133.101:5000/nginx
暂无评论内容