好的,有帖子关于更改位置Docker 数据,但是如果我需要将容器的文件系统放在一个驱动器(SSD)上,而将图像保存在另一个驱动器(HDD)上,该怎么办?
有没有办法在 WSL2 中做到这一点?
答案1
就你这个问题最纯粹的形式而言,我想我会选择“不”。正如文档中提到的:
警告:不要直接操作 中的任何文件或目录
/var/lib/docker/
。这些文件和目录由 Docker 管理。
虽然 WSL2 中的 Docker Desktop 没有将文件放在此目录中,但这个概念仍然成立。
然而,我认为您的问题的表述方式可能有点含糊。这完全取决于您所说的“容器文件系统”是什么意思。我们可以从两个方面来看待这个问题:
这
overlay2
文件系统Docker 使用(至少默认情况下1)来提供容器层,将层存储在与图像相同的位置。据我所知,存储驱动程序文档,无法为容器和图像选择不同的驱动程序。1 Docker Desktop 目前提供 Beta 选项,可使用 Containerd 来拉取镜像。在我的系统上,使用此选项后,存储驱动程序为
stargz
。当然,您也可以将存储作为 Docker 卷挂载到容器中。通过这样做,您可以为该卷指定一个位置,该位置位于您正在使用的 WSL2 发行版的文件系统上。
由于您已将系统移至docker-desktop-data
另一个驱动器,因此我假设这意味着您的发行版已位于“原始”驱动器上。无论如何,请参阅我的答案在这里有关如何移动发行版的更新说明。您引用的博客有点过时了——它可以工作,但目前有更简单的方法。