计算机知识分享网

【docker】Docker搭建本地私服registry2.8并迁移

拉取镜像的命令
docker pull 10.168.1.170:5000/library/registry:2.8
创建docker镜像存储目录,方便后期迁移私服镜像
mkdir -p /data/registry-data
添加docker信任的私有仓库地址
vi /etc/docker/daemon.json

#增加下面内容

"insecure-registries":["Ip:5000"]

#参考配置:

{
  "insecure-registries":["192.168.1.106:5000"]
}
重启docker 服务
systemctl restart docker
启动私服registry
docker run -d --name=registry  \
-v /data/registry-data:/var/lib/registry  \
-p 5000:5000 10.168.1.170:5000/library/registry:2.8
查看私有仓库,在浏览器输入:
http://ip:5000/v2/_catalog
修改tag为私服镜像
# docker镜像上传时需要指定仓库名称和镜像名称
docker tag docker.1ms.run/library/registry:2.8  10.168.1.170:5000/library/registry:2.8
上传镜像到本地的registry仓库中
docker push 10.168.1.170:5000/library/registry:2.8
备份registry镜像和仓库文件
# 备份镜像
docker save -o registry2.8.tar 10.168.1.170:5000/library/registry:2.8
# 打包仓库文件
tar czvf registry-images-data.tar.gz /data/registry-data

迁移
首先将备份的镜像和仓库压缩包上传到新服务器,然后在新的服务器上面,还原registry镜像
docker load -i registry2.8.tar
解压仓库压缩包
tar xf registry-images-data.tar.gz -C /data/registry-data
最后启动新的容器即可
docker run -d --name=registry  -v /data/registry-data:/var/lib/registry  -p 5000:5000 10.168.1.170:5000/library/registry:2.8

#Docker