gpt4 book ai didi

docker - 调整 Docker 容器的大小

转载 作者:行者123 更新时间:2023-12-01 00:57:18 24 4
gpt4 key购买 nike

我想看看每个 docker 容器的大小是否可以通过一些配置来限制。

关注 this ,我可以增加 的大小正在运行 容器从 10G。我可以缩小吗?试图缩小会抛出一个错误说 online shrinking not supported .

理想情况下,我正在寻找配置和设置默认容器大小的选项,容器在创建时将继承这些大小。
Docker 文档位于 devicemapper建议 --storage-opt在启动 docker 守护进程时。但它似乎不起作用。

我还想知道每个容器的大小是否可以限制(比如在 docker run 命令期间)。

任何指向正确方向的指针都非常感谢。
提前致谢

最佳答案

如果您使用的是 devicemapper 图形引擎,那么 storage-opt dm.basesize 是您尝试执行的操作的最佳选择。您需要在更改配置后清理/var/lib/docker(请注意,这将删除您当前拥有的所有图像,即使您使用直接块设备来配置数据和元数据池设备)。

以下是我遵循的步骤:

$ docker run -ti base/arch df -h /
Filesysem Size Used Avail Use% Mounted on
/dev/mapper/docker-254:7-73733-b8dc...6d28a 9.8G 335M 8.9G 4% /

所以我目前有默认的 10G 基本大小。

首先,更改配置添加“--storage-opt dm.basesize=5G”:
# vim /etc/systemd/system/docker.service
...
ExecStart=/usr/bin/docker -d -H fd:// -s devicemapper \
--storage-opt dm.datadev=/dev/vg01/docker-dm-data \
--storage-opt dm.metadatadev=/dev/vg01/docker-dm-meta \
--storage-opt dm.basesize=5G

然后,停止 Docker(确保预先停止所有容器,重新加载配置,清除/var/lib/docker 并重新启动 Docker:
# systemctl stop docker
# systemctl daemon-reload
# rm -rf /var/lib/docker
# systemctl start docker

“docker images”应该确认不存在图像。

现在重新运行测试:
$ docker run -ti base/arch df -h /
Unable to find image 'base/arch:latest' locally
Pulling repository base/arch
a64697d71089: Download complete
511136ea3c5a: Download complete
4bbfef585917: Download complete
Status: Downloaded newer image for base/arch:latest
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/docker-254:7-66094...f635ac65 4.8G 322M 4.3G 7% /

我们有一个 5Gb 的基本大小。

关于docker - 调整 Docker 容器的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26546490/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com