在 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
到此这篇关于docker私有仓库的建立的文章就介绍到这了,更多相关docker私有仓库内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!