我已经安装了 CoreOS,它默认使用大小为 100GB 的环回设备,我很容易达到了这个限制。
我的第一个想法是使用 NFS 将所有图像放在我的 NAS 上,只需将其安装在/var/lib/docker目录顶部,但没有任何成功。
现在我找到了这篇文章,它看起来像 docker 以任何方式在任何类型的存储之上创建块设备,以便使用它的 CoW 快照,这可能就是为什么我在第一次拍摄时没有成功的原因只是安装 NFS 共享在图像目录的顶部。有点吓到我了 为什么不将纯 NFS 与存储的本机快照一起使用?我希望对这样做有很好的解释。无论如何,我需要做这件怪事。我是 docker 和 CoreOS 的新手,不知道如何正确执行此操作。所以问题是:如何挂载 NFS 共享并将其用于 CoreOS 上的所有映像?
好消息,您不是第一个需要这样做的人。Docker 无法使用直接 NFS,因为它需要扩展属性 (xttrs) 的支持才能存储内核功能、SELinux 上下文等选项。通过使用设备映射器在远程存储上创建虚拟化块设备来伪造内容,您可以通过辅助机制提供使用 Docker 所需的内核机制。虽然这可以通过dm.loopdatasize 选项进行配置,正如他们在 Docker 页面上明确指出的那样"Note: This option configures devicemapper loopback, which should not be used in production.".
最终这取决于对底层存储的要求。Docker 只是使用内核提供的机制,并没有自己发挥作用。
| 归档时间: |
|
| 查看次数: |
5197 次 |
| 最近记录: |