docker私有仓库部署配置学习

发布于:2025-06-23 ⋅ 阅读:(12) ⋅ 点赞:(0)

docker私有仓库

私有仓库图例

本地集群
本地仓库
容器服务
docker-0001
容器服务
docker-0002
互联网仓库

私有仓库配置

主机名 ip地址 最低配置
registry 192.168.1.30 2CPU,4G内存
[root@registry ~]# yum install -y docker-distribution
[root@registry ~]# systemctl enable --now docker-distribution
[root@registry ~]# curl http://127.0.0.1:5000/v2/_catalog
{"repositories":[]}

客户端配置

所有node节点都需要配置,这里 docker-0001,docker-0002都要配置

[root@docker-0001 ~]# vim /etc/hosts
192.168.1.30	registry
[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":["192.168.1.30:5000","registry:5000"]
}
[root@docker-0001 ~]# docker rm -f $(docker ps -aq)
[root@docker-0001 ~]# systemctl restart docker
上传镜像
[root@docker-0001 ~]# docker tag myos:latest registry:5000/library/myos:latest
[root@docker-0001 ~]# docker push registry:5000/library/myos:latest
The push refers to repository [registry:5000/library/myos]
af5f00549b79: Pushed 
latest: digest: sha256:c130aafc1c2104f896ae03393740192d47 size: 527
[root@docker-0001 ~]# # 上传所有 myos 镜像
[root@docker-0001 ~]# docker tag centos:7 registry:5000/myimg/centos:7
[root@docker-0001 ~]# docker push registry:5000/myimg/centos:7
The push refers to repository [registry:5000/myimg/centos]
174f56854903: Pushed 
7: digest: sha256:dead07b4d8ed59d839686a31da35a3b532f size: 529
验证测试

查看镜像名称: curl http://仓库IP:5000/v2/_catalog
查看镜像标签: curl http://仓库IP:5000/v2/镜像名称/tags/list

[root@docker-0002 ~]# vim /etc/hosts
192.168.1.30	registry
[root@docker-0002 ~]# vim /etc/docker/daemon.json
{
    "exec-opts": ["native.cgroupdriver=systemd"],
    "registry-mirrors": ["http://registry:5000","https://hub-mirror.c.163.com"],
    "insecure-registries":["192.168.1.30:5000","registry:5000"]
}
[root@docker-0002 ~]# docker rm -f $(docker ps -aq)
[root@docker-0002 ~]# docker rmi -f $(docker images -aq)
[root@docker-0002 ~]# systemctl restart docker
# 查看镜像名称
[root@docker-0002 ~]# curl http://registry:5000/v2/_catalog
{"repositories":["library/myos","myimg/centos"]}
# 查看镜像标签
[root@docker-0002 ~]# curl http://registry:5000/v2/library/myos/tags/list
{"name":"library/myos","tags":["latest","httpd","phpfpm","nginx","v2009"]}
# 仓库中的 library 是默认路径,允许容器不需要指明地址
[root@docker-0002 ~]# docker run -it myos:v2009
[root@634766f788d6 /]# 
# 如果不是默认路径,运行容器需要指明镜像地址
[root@docker-0002 ~]# docker run -it registry:5000/myimg/centos:7
[root@2b7cd6d88a76 /]# 

网站公告

今日签到

点亮在社区的每一天
去签到