【问题标题】:Increase PIDs of Ghost Docker增加 Ghost Docker 的 PID
【发布时间】:2018-07-26 07:21:29
【问题描述】:

我正在使用 Docker 的 Ghost 博客,但我的网站有太多用户访问权限。 当我查看容器的统计信息时,Ghost 只提供 10 个 pid,而不是更多。

那么,如何在 ghost docker 容器中增加更多的 pid?

【问题讨论】:

  • 您找到解决方案了吗?
  • 我正在努力。因为如果我打开更多的 pid,叉子炸弹会很难。所以,我正在考虑另一种方式,优化 Ghost 或将 Ghost 重建为 NodeJS 模块。
  • 这听起来是个好主意。

标签: node.js docker docker-compose ghost-blog


【解决方案1】:

我将回答您的问题“如何在 Docker 中增加 PID”,但我认为您的问题不是来自此限制。

如果你想增加任何 Docker 容器的 PID 限制,你可以使用选项 --pids-limit 从 Docker Engine 1.11 开始。可以在here, in the docker run documentation from docs.docker.com找到文档。

上面写着:

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

您必须使用此选项重新启动您的容器。重新启动,我的意思是删除它然后重新启动它(确保你不会丢失任何数据这样做)。

PID 受到限制是有原因的,例如,它避免了分叉炸弹。但限制不是 10 个 PID,而是 512 个(实际数量可能会发生变化):

这是一个新的 cgroup,用于限制可以在 cgroup 内分叉的进程数量。它在 4.3 内核中发布。

我们决定在默认情况下确保此功能的安全性,这意味着我们将 docker cgroup 父级的 PID 限制设置为 512(实际数字可能会发生变化,但与此类似),对于普通用户来说已经足够了,但还不够造成很大的伤害。

当然,如果您需要更多,您可以覆盖默认值,甚至将其设置为无限制。

[...]

看看使用容器的 --pids-limit 来防止分叉炸弹是多么容易。

-Docker Engine 1.10 Security Improvements, by Jessie Frazelle on 02/04/2016, Docker Blog

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-16
    相关资源
    最近更新 更多