如何增加docker容器的大小限制?

时间:2019-03-14 18:16:58

标签: docker

上下文:我在Archlinux下,并且想要创建一个dockerfile作为我在Ubuntu 16.04(xenial)下程序用户的参考。它在apt上只有一个旧的OpenCV版本(2.4),因此我需要从源代码编译OpenCV。

问题:OpenCV编译会创建超过10G的数据,这是容器大小限制(用df -h可见),因此在完成编译之前会崩溃。

最后一次尝试失败:我看到有一个守护程序选项--storage-opt dm.basesize=20G。所以我更改了docker.service行:

# from
ExecStart=/usr/bin/dockerd -H fd://
# to
ExecStart=/usr/bin/dockerd --storage-opt dm.basesize=20G -H fd://

重新启动守护程序服务并修剪所有映像和容器后,命令docker info现在显示“基本设备大小:21.47GB”,而不是以前的10GB。但是,每个新容器的大小限制仍然为10G。命令df -h显示:

root@71802e5b7ba4:/# df -h
Filesystem                                                                                       Size  Used Avail Use% Mounted on
/dev/mapper/docker-8:6-1704110-b5a7ec35a707f478a4a836ff859108092bbe32525d558d4f6661efba91313801   10G  139M  9.9G   2% /
...

关于如何更改此设置的任何想法吗?

1 个答案:

答案 0 :(得分:1)

您也可以使用devicemapper存储驱动程序(old example)来完成此操作。您只需要删除(docker rmi)并首先构建/拉动已使用的Docker映像即可。更改存储驱动程序还会触发从头开始将所有图像拖到文件系统,因此可以理解为什么它与overlay2一起使用。