【问题标题】:Increase Docker container size from default 10GB on rhel7将 Docker 容器大小从 rhel7 上的默认 10GB 增加
【发布时间】:2018-05-02 18:05:25
【问题描述】:

当我从 rhel7.3 映像启动容器时,默认容器大小为 10GB。我想将其增加到 20GB。我尝试了以下方法,但我没有运气

1) 在 /etc/docker/daemon.json 文件中添加了“DOCKER_STORAGE_OPTIONS”:“--storage-opt dm.basesize=20G”。 /etc/docker/daemon.json 文件默认不存在,所以我不得不添加它并尝试重新启动 docker。重启失败并出现以下错误:

“无法使用文件 /etc/docker/daemon.json 配置 Docker 守护进程:以下指令不匹配任何配置选项:DOCKER_STORAGE_OPTIONS\n”

2) 在启动容器时添加了“dm.basesize=20G”参数

docker run --privileged --storage-opt "dm.basesize=20G" -d IMAGE_ID 但它无法启动并出现错误

“docker:来自守护进程的错误响应:未知选项 dm.basesize。”

关于如何启动一个 20GB 而不是默认的 10GB 的容器有什么帮助吗? 谢谢, 预知

【问题讨论】:

  • 存储驱动是devicemapper

标签: docker containers devops


【解决方案1】:

我通过以下步骤将存储类型更改为“覆盖”

1) 在 /etc/docker/daemon.json 文件中添加了 {"storage-driver": "overlay"}。 rhel 7.3 中没有这个文件,所以我手动添加了它。

2) 重启docker

随着每个容器获得主机上可用的总容量,我增加容器容量的问题得到了解决。

【讨论】:

    【解决方案2】:

    和你有同样的问题,经过大量研究我找到了一个简单的解决方案:

    1. 停止 docker 服务:

      sudo systemctl stop docker

    2. 编辑您的 docker 服务文件,位于:

      /usr/lib/systemd/system/docker.service

    3. 找到执行行:

      ExecStart=/usr/bin/dockerd
      并将其更改为:
      ExecStart=/usr/bin/dockerd --storage-opt dm.basesize=20G

    4. 再次启动docker服务:

      sudo systemctl start docker

    全部完成。

    【讨论】:

      【解决方案3】:

      你有正确的标志,--storage-opt dm.basesize=some_size,但是这是一个应该给 dockerd 而不是 docker 的参数。

      尝试重新格式化您的 daemon.json 文件以包含:

      "storage-opt": [ "dm.basesize=20G" ]

      【讨论】:

      • 您好丹尼尔,感谢您的回复。我按照您的建议编辑了 daemon.json 文件,现在可以重新启动 docker 服务。但是当我启动容器时,我仍然看到容器大小为 10GB
      • /dev/dm-3 10G 511M 9.5G 5% /var/lib/docker/devicemapper/mnt/6b3903e2634ff651ded83623d649f95ad4441a7bce44d4043fbba17d9a7c6291
      猜你喜欢
      • 2020-04-23
      • 1970-01-01
      • 2021-05-15
      • 2017-08-31
      • 1970-01-01
      • 2014-08-21
      • 1970-01-01
      • 2021-01-10
      • 1970-01-01
      相关资源
      最近更新 更多