可以将 Docker 的存储目录(包括 overlay2)迁移到其他盘,以缓解磁盘空间压力。

  1. 停止 Docker 服务:

    sudo systemctl stop docker
  2. 将原有的 Docker 数据目录(一般为 /var/lib/docker)迁移至新盘挂载的目录。例如新目录为 /data/docker

    sudo mv /var/lib/docker /data/docker
    sudo cp /var/lib/docker /data/docker

    如果 /data 是你新挂载的分区所在目录,请确保其有足够的磁盘空间,并权限设置正确(一般 root 权限即可)。

  3. 编辑 Docker Daemon 的配置文件 /etc/docker/daemon.json,添加或修改 data-root 项:

    {
      "data-root": "/data/docker"
    }

    如果此文件不存在,可以新建文件并写入上述内容。

  4. 重启 Docker 服务:

    sudo systemctl start docker

    重启后,Docker 将以 /data/docker 为数据根目录,其中 overlay2 目录也会位于该路径下。

sudo rsync -aP /var/lib/docker/ /data/docker2/

/etc/docker/daemon.json

{

"registry-mirrors": [
    "https://hub.geekery.cn",
    "https://dockerpull.com",
    "https://docker.1panel.dev",
    "https://docker.fxxk.dedyn.io",
    "https://docker.xn--6oq72ry9d5zx.cn",
    "https://docker.zhai.cm",
    "https://docker.5z5f.com",
    "https://a.ussh.net",
    "https://hub.littlediary.cn"
],
"data-root": "/data/docker"

}