站长资讯网
最全最丰富的资讯网站

Docker怎样搭建本地私有仓库(实例详解)

本篇文章给大家带来了关于docker中搭建本地私有仓库的相关知识,其中包括使用registry镜像创建私有仓库以及检查是否搭建成功等相关问题,希望对大家有帮助。

Docker怎样搭建本地私有仓库(实例详解)

使用registry镜像创建私有仓库

docker run -itd --restart always --name docker-hub -p 5000:5000 -v /opt/data/registry:/var/lib/registry registry

查看私有仓库 现在还没有存放镜像 所以显示为空

curl -XGET 127.0.0.1:5000/v2/image_name/tags/list

新建一个镜像(以ip:端口为名), 并尝试push

ifconfig | grep inet

Docker怎样搭建本地私有仓库(实例详解)
晓得了本机的ip为 172.17.0.1

  1. 创建新容器
docker tag ubuntu:18.04 172.17.0.1:5000/test

Docker怎样搭建本地私有仓库(实例详解)
2. push镜像

docker push 172.17.0.1:5000/test

若出现

Get https://172.17.0.1:5000/v2/: http: server gave HTTP response to HTTPS client

Docker怎样搭建本地私有仓库(实例详解)
不要慌张, 去更改一下机器配置(/etc/docker/daemon.json)就可以了, 首先避免手残, 先用cp备份一下

cp daemon.json daemon.json.bak

再更改daemon.json的内容

{"insecure-registries":["172.17.0.1:5000"]}

insecure-registries的值为可迭代列表,可以自行添加ip:端口

Docker怎样搭建本地私有仓库(实例详解)
记得更改为自己的ip与端口

重启Docker

systemctl restart docker

最后成功push

docker push 172.17.0.1:5000/test

Docker怎样搭建本地私有仓库(实例详解)

检查是否搭建成功/尝试pull下刚刚push的文件

将原来的镜像删掉

docker rmi 172.17.0.1:5000/test  #将原来push的镜像删掉,方便等会pull检验echo 'DOCKER_OPTS="--insecure-registry 172.17.0.1:5000/test' >> /etc/default/docker

若在只是实验,写0.0.0.0/0(全部ip端口)也不是不行
Docker怎样搭建本地私有仓库(实例详解)

service docker restart		#重启服务docker pull 172.17.0.1:5000/test	#pull下之前push的镜像

Docker怎样搭建本地私有仓库(实例详解)
下载后可以将pull下的镜像, 改一下名字, 方便以后调用.

推荐学习:《docker视频教程》

赞(0)
分享到: 更多 (0)