【问题标题】:docker, --storage-opts and aufs storage-driverdocker、--storage-opts 和 aufs 存储驱动程序
【发布时间】:2017-02-14 20:56:09
【问题描述】:

我希望能够限制容器大小,但是使用默认存储驱动程序 aufs(适用于 Ubuntu 14.04)在尝试使用 --storage-opt 参数时出现错误

$ docker create -it --name="disk_test" --storage-opt size=100G --cpuset-cpus="10,11,12,13,14,15,16,17" -m=16G ubuntu:14.04
Unable to find image 'ubuntu:14.04' locally
14.04: Pulling from library/ubuntu
04c996abc244: Pull complete
d394d3da86fe: Pull complete
bac77aae22d4: Pull complete
b48b86b78e97: Pull complete
09b3dd842bf5: Pull complete
Digest: sha256:bd00486535fd3ab00463b0572d94a62715cb790e482d5419c9179cd22c74520b
Status: Downloaded newer image for ubuntu:14.04
Error response from daemon: --storage-opt is not supported for aufs

当我使用 devicemanager 作为我的存储驱动程序时,它可以工作。如果我想限制我的容器根文件系统大小,我唯一的选择是选择 aufs 以外的东西吗?

【问题讨论】:

    标签: docker device-manager


    【解决方案1】:

    您可以告诉 Docker 使用 DeviceMapper 存储后端而不是 AuFS。这样每个容器都会在块设备上运行

    【讨论】:

      【解决方案2】:

      --storage-opt size=X 在 Docker 1.12 中的 devicemapperzfsbtrfs 上运行时可用,也可能在 Windows 上运行。

      该选项目前不适用于 aufs 或 overlay/2 存储驱动程序。

      看起来overlay2 on XFS 将在 Docker 1.13-1.14 中获得支持。 Ext4 支持将在一段时间后推出,因为它依赖于更新到比当前大多数发行版 (4.5+) 更新的内核。

      aufs 可能无法获得该功能,因为 Docker 似乎正在推动将 overlay2 作为默认设置,因为 4+ 内核已经内置了对覆盖的支持。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-16
        • 2015-09-09
        • 2016-08-19
        • 2017-01-20
        • 2017-01-06
        • 2019-03-29
        相关资源
        最近更新 更多