本篇文章给大家带来了关于docker中搭建本地私有仓库的相关知识,其中包括使用registry镜像创建私有仓库以及检查是否搭建成功等相关问题,希望对大家有帮助。
使用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
晓得了本机的ip为 172.17.0.1
- 创建新容器
docker tag ubuntu:18.04 172.17.0.1:5000/test
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
不要慌张, 去更改一下机器配置(/etc/docker/daemon.json)就可以了, 首先避免手残, 先用cp备份一下
cp daemon.json daemon.json.bak
再更改daemon.json的内容
{"insecure-registries":["172.17.0.1:5000"]}
insecure-registries的值为可迭代列表,可以自行添加ip:端口
记得更改为自己的ip与端口
重启Docker
systemctl restart docker
最后成功push
docker push 172.17.0.1:5000/test
检查是否搭建成功/尝试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端口)也不是不行
service docker restart #重启服务docker pull 172.17.0.1:5000/test #pull下之前push的镜像
下载后可以将pull下的镜像, 改一下名字, 方便以后调用.
推荐学习:《docker视频教程》