Docker 另一个硬盘驱动器上另一个分区上的命名卷

Docker Named Volume on another Partition on another hard drive

我的 PC 上有一个 Docker 容器 运行ning。容器的主要功能是抓取数据,每天累积 0.3GB。我只需要最近 30 天的数据,此后我计划将其存档存储在硬盘驱动器上以供历史使用。然而,经过几个小时的试验和错误,我未能在另一个分区上创建 Docker 卷,并且 _data 文件夹始终出现在 /var/lib/docker/volumes/ 文件夹,而分区驱动器始终为空。

我也尝试使用 docker 运行 -v 创建卷,但它仍然在主卷文件夹中创建卷。

操作系统是Pop!_OS 20.04 LTS

我将提供有关分区的数据:

I'll provide data about the partition:

对于 docker 卷,您无法控制 docker 保存其卷的位置。您所能做的就是更改 docker 根目录。所以最好将你的新分区挂载到一个目录下,然后将 docker 根目录更改为这个挂载点。这样你就可以实现你想要的。您还应该考虑这样做,所有 docker 数据都将存储在这个新分区中。

要更改您的 docker 根目录,您应该首先在以下地址创建一个名为 daemon.json 的文件:

/etc/docker/daemon.json

然后添加下面的配置:

{
  "data-root": "/path/to/new/directory"
}

然后重新启动 docker 守护程序:

systemctl restart docker

然后你可以运行下面的命令来检查当前docker根目录:

docker info

如果您使用 docker volumes,您的所有卷数据都存储在默认位置 (/var/lib/docker),但您可以在 /etc/docker/daemon.json 配置文件中更改它:

{
  ...

  "data-root": "/your/path/here",

  ...
}

重新启动 docker 服务以应用更改。

Docker 守护程序配置文件文档 here.