我的 NodeJS 应用程序在 ec2 实例上的 docker 容器内运行。在服务器本身耗尽内存之前,它的内存就已经耗尽了。容器只能使用大约 25% 的内存。但为什么呢?
以下机制似乎不是原因:
ulimit
返回unlimited
。cat /sys/fs/cgroup/memory/docker/memory.limit_in_bytes
返回9223372036854771712
我正在运行docker,没有任何限制标志
答案1
虽然您没有提供 docker 容器限制,例如如何运行容器以及参数,但您可以参考此页面https://docs.docker.com/config/containers/resource_constraints/这里列出了与内存相关的具体参数https://docs.docker.com/config/containers/resource_constraints/#limit-a-containers-access-to-memory