迁移Docker镜像存放目录

Docker镜像的默认目录为 /var/lib/docker 下的子目录 image,假设换到新的目录 /data1/docker,可按如下步骤操作:

  • 1、停掉docker守护进程:
shell 复制代码
systemctl stop docker
  • 2、创建新的镜像存放目录:
shell 复制代码
mkdir -p /data1/docker
  • 3、创建或编辑Docker的配置文件/etc/docker/daemon.json:
shell 复制代码
# cat /etc/docker/daemon.json
{
    "data-root": "/data1/docker",
    "registry-mirrors": [
        "http://docker.my.com:8080",
        "http://hub.my.com"
    ],
    "insecure-registries" : [ 
        "mirrors.my.com",
        "docker.my.com:8080",
        "hub.my.com"
    ]
}
  • 4、将/var/lib/docker目录下的镜像复制到新目录:
shell 复制代码
rsync -aP /var/lib/docker/ /data1/docker/

如果已经存了很多镜像,这一步可能要执行数小时才能完成。

  • 4、重新启动Docker守护进程:
shell 复制代码
systemctl start docker

完成后可执行 docker info 查看Docker的配置:

shell 复制代码
# docker info | grep "Docker Root Dir"
Docker Root Dir: /data1/docker

可以将原来的删除释放空间:

shell 复制代码
# rm -fr /var/lib/docker

如果已经存了很多镜像,这一步可能要执行数分钟才能完成。

相关推荐
毕竟是shy哥1 小时前
vs code连接远程服务器docker环境及配置免密登录
服务器·docker·vs code
IT大白鼠1 小时前
Ingress 与 Ingress-Controller:K8s 七层 HTTP 反向代理技术详解与实践
http·容器·kubernetes
java_logo2 小时前
Docker 部署 Rocky Linux:轻松搭建 RHEL 兼容企业级基础镜像平台
linux·docker·容器·rocky linux·基础镜像·轩辕镜像·rhel 兼容
cloudfantasy3 小时前
docker直接二进制安装,非编译。KylinV10SP3 aarch64有效
运维·docker
M--Y6 小时前
Docker数据持久化与网络架构
网络·docker·架构
鹤落晴春8 小时前
【K8s】认识Kubernetes API:从CRD出发的一次梳理
云原生·容器·kubernetes
yanwumuxi10 小时前
Docker记录:误删宿主机挂载目录导致 PostgreSQL 数据丢失
docker·postgresql·容器
cui_hao_nan11 小时前
Docker 学习 5
docker·容器
A黄俊辉A12 小时前
两分钟上手docker
运维·docker·容器
程序员老赵13 小时前
Docker 部署 go2rtc:轻松搭建摄像头多协议流媒体平台
前端·docker·直播