3

在一个系统上,Docker 容器的磁盘大小是这样的:

root@b65c6518f583:/# df -h
Filesystem                                                                                           Size  Used Avail Use% Mounted on
/dev/mapper/docker-253:0-202764498-b65c6518f5837667e7021971a97aebd382dddca6b3ecf4167472ebe17f16aace   99G  268M   94G   1% /
tmpfs                                                                                                5.8G     0  5.8G   0% /dev
shm                                                                                                   64M     0   64M   0% /dev/shm
tmpfs                                                                                                5.8G     0  5.8G   0% /sys/fs/cgroup
tmpfs                                                                                                5.8G   96K  5.8G   1% /run/secrets
/dev/mapper/rhel-root                                                                                 50G   20G   31G  40% /etc/hosts

我们可以看到rootfs的大小是99G。而在另一个系统中,Docker 容器的磁盘大小是这样的:

53ac740bd09b:/ # df -h
Filesystem                                                                                       Size  Used Avail Use% Mounted on
/dev/mapper/docker-8:8-4202821-2a6f330df1b7b37d55a96b098863f81e4a7f1c39fcca3f5fa03b57998cb33427  9.8G  4.4G  4.9G  48% /
tmpfs                                                                                            126G     0  126G   0% /dev
tmpfs                                                                                            126G     0  126G   0% /sys/fs/cgroup
/dev/sda8                                                                                         97G   11G   82G  12% /data
shm                                                                                               64M     0   64M   0% /dev/shm

rootfs 大小只有 9.8G。

docker容器的rootfs大小是如何决定的?如何修改 rootfs 大小的值?

4

2 回答 2

3

容器的默认大小为 10 GB,您可以更改它。

以下摘录自:
https ://docs.docker.com/engine/reference/commandline/daemon/

dm.basesize

指定创建基本设备时要使用的大小,这会限制图像和容器的大小。默认值为 10G。请注意,精简设备本质上是“稀疏的”,因此大部分为空的 10G 设备不会使用池中的 10 GB 空间。但是,设备越大,文件系统就会为空箱使用更多空间。

基本设备大小可以在守护进程重新启动时增加,这将允许所有未来的图像和容器(基于这些新图像)具有新的基本设备大小。

例子:

$ docker daemon --storage-opt dm.basesize=50G

这会将基本设备大小增加到 50G。如果现有的基本设备大小大于 50G,Docker 守护程序将抛出错误。用户可以使用此选项扩展基本设备大小,但不允许缩小。

该值影响系统范围的“基本”空文件系统,该文件系统可能已经被拉取的图像初始化和继承。通常,对此值的更改需要额外的步骤才能生效:

$ sudo service docker stop

$ sudo rm -rf /var/lib/docker

$ sudo service docker start

示例使用:

$ docker daemon --storage-opt dm.basesize=20G
于 2016-03-29T05:41:22.803 回答
-1

如果您希望 docker 容器大于默认大小,本教程完成了任务。我知道它适用于 CentOs 7。使用 CentOs 6,您只需xfs_growfsresize2fs.

我使用的是 docker 1.7

于 2019-02-22T19:15:20.513 回答