迁移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

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

相关推荐
努力买辣条7 小时前
基于 Docker 的高可用 WordPress 集群部署:分布式 Nginx + Keepalived、MySQL 主从复制与 ProxySQL 读写分离
分布式·nginx·docker
CTRA王大大10 小时前
【golang】制作linux环境+golang的Dockerfile | 如何下载golang镜像源
linux·开发语言·docker·golang
@寄居蟹15 小时前
Docker 命令大全
docker·容器·eureka
运维开发王义杰16 小时前
GitLab CI:深度解析 Runner的Shell与Docker执行器
ci/cd·docker·gitlab
qq_3643717216 小时前
Docker 常见命令
运维·docker·容器
照物华17 小时前
k8s之 Pod 资源管理与 QoS
云原生·容器·kubernetes
hhzz17 小时前
重温 K8s 基础概念知识系列八( K8S 高级网络)
网络·容器·kubernetes
Insist75317 小时前
K8s--调度管理:node节点、Pod亲和性、污点与容忍
linux·容器·kubernetes
Insist75318 小时前
k8s——持久化存储 PVC
java·容器·kubernetes
无级程序员21 小时前
kubernetes-dashboard使用http不登录
http·容器·kubernetes