gpt4 book ai didi

docker - 限制 docker 容器内启动的进程数量

转载 作者:行者123 更新时间:2023-12-02 11:07:22 24 4
gpt4 key购买 nike

我正在努力最大程度地减少 Docker 容器内的 fork 炸弹造成的损坏。

我正在使用 pam_limits/etc/security/limits.conf 文件是

1000:1128 hard nproc 40
1000:1128 soft nproc 40

这意味着 id 在 [1000..1128] 范围内的任何用户最多可以拥有 40 个进程。如果我由具有此类 ID 的用户在 shell 中运行 forkbomb,则效果很好。

但是当我在 docker 容器内运行 fork 炸弹时,这些限制不会被应用,所以当我运行命令时

# docker run -u 1000 ubuntu bash -c ":() { : | : & }; :; while [[ true ]]; do sleep 1; done"

我有尽可能多的进程,所有这些进程都属于 id=1000 的用户。

怎么了?我该如何修复它?

最佳答案

运行容器时,有一个选项可以限制 pid 的数量:

--pids-limit: Tune container pids limit (set -1 for unlimited)

命令是:

docker container run --pids-limit 100 your-image

引用:https://docs.docker.com/engine/reference/commandline/run/#options

关于docker - 限制 docker 容器内启动的进程数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28237906/

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