Centos 7.9 Install Docker Insecure Registry

1. 镜像存储规划

创建两个目录

  • 一个 docker 数据存储目录 :/data/docker,默认一般为linux为 /var/lib/docker,windows 为C:\ProgramData\docker
  • 一个registry 镜像仓库数据目录: /data/registry
mkdir /data/docker
mkdir /data/registry

2. 安装定制 docker

yum install -y yum-utils 
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum list docker-ce --showduplicates | sort -r
sudo yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

配置

cat <<EOF> /etc/docker/daemon.json 
{
    
    
   "exec-opts": ["native.cgroupdriver=systemd"],
   "data-root": "/data/docker",
   "live-restore": true,
   "log-driver": "json-file",
   "log-opts": {
    
    
     "max-size":  "100m",
     "max-file": "5"
    }
 }
EOF

启动

sudo systemctl start docker && systemctl enable docker  && systemctl status docker

验证

$ ls /data/docker/
buildkit  containers  engine-id  image  network  overlay2  plugins  runtimes  swarm  tmp  volumes

3. 部署 registry

拉取镜像

docker pull registry:2.8.3

创建镜像仓库

docker run -tid --restart=always --name registry -p 80:5000 -v /data/registry:/var/lib/registry registry:2.8.3

检查状态

$ docker ps
CONTAINER ID   IMAGE            COMMAND                  CREATED         STATUS         PORTS                                       NAMES
238a044893a5   registry:2.8.3   "/entrypoint.sh /etc…"   5 seconds ago   Up 4 seconds   0.0.0.0:80->5000/tcp, :::80->5000/tcp   registry

配置域名解析

echo "192.168.10.22  registry01.ghostwritten.com" >> /etc/hosts

修改配置

$ cat /etc/docker/daemon.json
{
    
    
   "exec-opts": ["native.cgroupdriver=systemd"],
   "insecure-registries": ["registry01.ghostwritten.com"],  #添加
   "data-root": "/data/docker",
   "live-restore": true,
   "log-driver": "json-file",
   "log-opts": {
    
    
     "max-size":  "100m",
     "max-file": "5"
    }
 }

$ systemctl restart docker

4. 验证镜像仓库

检查仓库

$ curl 192.168.10.22/v2/_catalog
{
    
    "repositories":[]}

推送镜像

$ docker tag registry:2.8.3 registry01.ghostwritten.com/library/registry:2.8.3
$ docker push registry01.ghostwritten.com/library/registry:2.8.3
The push refers to repository [registry01.ghostwritten.com/library/registry]
ab4798a34c77: Layer already exists 
0b261c932361: Layer already exists 
d95d36f1fde7: Layer already exists 
b4fcd5c55862: Layer already exists 
cc2447e1835a: Layer already exists 
2.8.3: digest: sha256:386cdae4ba70c368b780a6e54251a14d300281a3d147a18ef08ae6fb079d150c size: 1363

拉取镜像镜像

登陆另一台节点,重复上面安装docker 、配置docker、配置域名解析,即可拉取镜像

docker pull registry01.ghostwritten.com/library/registry:2.8.3

参考:

猜你喜欢

转载自blog.csdn.net/xixihahalelehehe/article/details/134633564
今日推荐