修改docker默认root目录

方法一

  • 停止服务 systemctl stop docker

  • 修改docker服务配置文件/usr/lib/systemd/system/docker.service

    1
    2
    # 启动命令配置中,增加 --data-root 配置
    ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --data-root=/data/docker_home
  • 同步原来的数据到新目录 rsync -aqxP /var/lib/docker/ /data/docker_home/

  • 删除原来目录 rm -rf /var/lib/docker/

  • 重新加载配置 systemctl daemon-reload

  • 启动服务 systemctl start docker

方法二

  • 停止服务 systemctl stop docker

  • 修改配置文件 /etc/docker/daemon.json

    1
    2
    3
    4
    5
    6
    7
    8
    // 增加 graph 或 data-root 配置
    {
    "graph": "/data/docker_home" // 不推荐使用, 该配置19.03.0版本已废弃,计划19.09.0版本删除
    }

    {
    "data-root": "/data/docker_home"
    }
  • 同步原来的数据到新目录 rsync -aqxP /var/lib/docker/ /data/docker_home/

  • 删除原来目录 rm -rf /var/lib/docker/

  • 重新加载配置 systemctl daemon-reload

  • 启动服务 systemctl start docker