docker搭建私有仓库,实现私有仓库迁移

A机器是镜像来源机器,B机器是目标迁入机器

A机器创建目录用于存储仓库数据
mkdir -p /mnt/registry-data

#修改文件
vi /etc/docker/daemon.json

{
  "insecure-registries":["127.0.0.1:5000"]
}

#重新加载配置
systemctl daemon-reload
#重启
systemctl restart docker

#运行仓库,映射上面创建的目录
docker run -d --name=registry -v /mnt/registry-data:/var/lib/registry -p 5000:5000 registry


#修改redis镜像tag
docker tag redis  127.0.0.1:5000/redis

将redis上传到仓库
docker push 127.0.0.1:5000/redis

#检查是否上传成功
cd进入/mnt/registry-data/docker/registry/v2/repositories目录,查看redis是否被成功上传(mysql上传同上)

#打包registry
docker save -o /mnt/registry.tar registry


#打包目录registry-data,生成registry-data.tar.gz,放到/mnt目录下
cd /mnt
tar czvf registry-data.tar.gz registry-data

#将A机器上的/mnt目录下面的registry.tar和registry-data.tar.gz拷贝到B机器的/mnt目录下
#编辑B机器
vi /etc/docker/daemon.json

{
  "insecure-registries":["127.0.0.1:5000"]
}
#重新加载配置
systemctl daemon-reload
#重启
systemctl restart docker


#导入registry镜像

docker load -i /mnt/registry.tar

#解压registry-data仓库目录
tar xf /mnt/registry-data.tar.gz -C /mnt

#运行仓库,映射上面创建的目录
docker run -d --name=registry -v /mnt/registry-data:/var/lib/registry -p 5000:5000 registry


#从本地仓库下载下载redis镜像

docker pull 127.0.0.1:5000/redis

你可能感兴趣的:(docker,运维,容器)