使用DeviceMapper

时间:2015-11-11 07:52:37

标签: docker quota device-mapper

我已将存储插件更改为DeviceMapperDocker info提供以下输出。

Server Version: 1.9.0
Storage Driver: devicemapper
 Pool Name: docker-253:1-16-pool
 Pool Blocksize: 65.54 kB
 Base Device Size: 107.4 GB
 Backing Filesystem: extfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 1.821 GB
 Data Space Total: 268.4 GB
 Data Space Available: 11.66 GB
 Metadata Space Used: 2.101 MB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.145 GB
 Udev Sync Supported: true
 Deferred Removal Enabled: false
 Deferred Deletion Enabled: false
 Deferred Deleted Device Count: 0
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.90 (2014-09-01)
Execution Driver: native-0.2

首先,我不知道如何设置每个容器的配额。我应该在docker run命令中使用flgas吗?

1 个答案:

答案 0 :(得分:0)

使用devicemapper作为存储插件,您无法为每个容器设置磁盘大小。每个容器的尺寸都是固定的。根据{{​​1}}的输出,它表明固定大小约为100GB。但是,根据您的要求,您可以选择以下两个选项之一。

a。)您可以将此固定大小从100GB更改为其他值(如20GB),但在这种情况下,所有容器的固定磁盘大小均为20GB。如果您想继续使用此选项,可以按照以下步骤操作:

  1. 停止泊坞窗服务,docker info
  2. 删除现有的docker目录(在您的情况下是默认目录) 一个,即sudo service docker stop) - 注意这将删除你的所有 现有的码头图像和容器。
  3. 使用选项/var/lib/docker
  4. 启动docker守护程序
  5. 或者代替第3步,在文件docker daemon -s devicemapper --storage-opt dm.basesize=20G中添加选项DOCKER_OPTS='-g /var/lib/docker -s devicemapper --storage-opt dm.basesize=5G'并重新启动docker service

    /etc/default/docker

  6. 现在,无论你生成什么容器,磁盘大小都是20GB。

    b。)作为第二种选择,您可以从已设置的任何基本磁盘大小增加现有容器的磁盘大小。 (默认情况下为100GB,如果您按照第一个选项,则为20GB)。为此,here是一篇非常有用的文章,您可以遵循。这可能有助于您为不同的容器设置不同的磁盘大小。

    希望这个答案对你的要求有用,谢谢。