- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有多个 docker 进程在一台机器上运行,我想监视它们并在超过特定内存阈值后重新启动 docker 进程。
我可以让 docker 在达到内存阈值时重新启动它的进程吗?
我的选择是什么?
谢谢
亚历克斯
最佳答案
您可以编写一个 shell 脚本来监视资源使用情况,并在达到内存限制时重新启动 Docker 守护程序,但我认为这实际上不是一个好方法。
使用此命令,您可以查看按内存使用情况排序的容器。找出哪个容器使用了过多内存并尝试找出原因,因为这种情况正在发生。docker stats --no-stream --format "table {{.Name}}\t{{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}" | sort -k 4 -h
此外,如果您的容器的内存消耗正常,但您想限制它,您可以限制分配给每个容器的资源。您可以使用选项 --memory
执行此操作在 docker run
.
有关内存限制的更多信息,请查看 Docker 文档中的此信息:https://docs.docker.com/engine/admin/resource_constraints/
希望这有帮助,祝你好运。
编辑:回答您的回答,如果您的容器内存不足,它将被内核自动杀死。您可以使用选项 --memory
配置内存限制并将重启策略设置为 --restart=always
.这样,您的容器将因 OOM(内存不足)错误而自动终止,但它将重新启动,因为其重新启动策略是在出现任何错误后继续重新启动。
关于docker - 消耗一定内存时重启docker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44669568/
我正在尝试开发右边框/Angular 具有特定 Angular (30°) 的表格。我见过一些类似的解决方案,但它们都无法在一定程度上发挥作用。如果我想从 30° 改变到 20°,我不想花太多力气。
我是一名优秀的程序员,十分优秀!