私有仓库配置
[root@registry ~]# yum install -y docker-distribution
[root@registry ~]# systemctl enable --now docker-distribution
验证结果:
[root@registry ~]# curl http://192.168.1.30:5000/v2/_catalog
{"repositories":[]}
客户端配置
所有node节点都需要配置,这里 docker-0001,docker-0002都要配置
配置主机名解析
[root@docker-0001 ~]# vim /etc/hosts
192.168.1.30 registry
"insecure-registries":声明这个仓库是不安全的,仍然使用
[root@docker-0001 ~]# vim /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"registry-mirrors": ["http://registry:5000","https://hub-mirror.c.163.com"],
"insecure-registries":["registry:5000"]
}
[root@docker-0001 ~]# docker rm -f $(docker ps -aq)
[root@docker-0001 ~]# systemctl restart docker
docker-0002配置
[root@docker-0001 ~]# scp /etc/hosts 192.168.1.32:/etc/
[root@docker-0001 ~]# scp /etc/docker/daemon.json 192.168.1.32:/etc/docker/
[root@docker-0002 ~]# systemctl restart docker
上传镜像
[root@docker-0001 ~]# docker tag centos:7 registry:5000/centos:7
[root@docker-0001 ~]# docker push registry:5000/centos:7
上传所有的myos镜像,可以写个循环
[root@docker-0001 ~]# for i in nginx phpfpm httpd latest v2009
do
docker tag myos:$i registry:5000/myos:$i
docker push registry:5000/myos:$i
docker rmi registry:5000/myos:$i
docker rmi myos:$i
done
验证测试
查看镜像名称: curl http://仓库IP:5000/v2/_catalog
查看镜像标签: curl http://仓库IP:5000/v2/镜像名称/tags/list
#查看镜像名称
[root@docker-0002 ~]# curl http://registry:5000/v2/_catalog
{"repositories":["myos"]}
#查看镜像标签
[root@docker-0002 ~]# curl http://registry:5000/v2/myos/tags/list
#下载镜像
[root@docker-0002 ~]# docker pull registry:5000/myos:nginx
#直接启动容器,没有镜像会直接自行下载
[root@docker-0002 ~]# docker run -itd registry:5000/myos:httpd