企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
平时我们百度来的docker run xxx 用于生产环境的话是不适合的。 因为我们需要更多的条件去限制一个容器的资源使用,否则出问题是血的教训。 我这里拿一个java jar包的容器作为例子. ``` docker run -itd -p 40001:40001 -v /etc/localtime:/etc/localtime --privileged=true --restart=always --log-opt max-size=10m --log-opt max-file=1 --restart=on-failure:1 --oom-score-adj -1000 --name test jdk:1.8 ``` 参数解读 privileged,特权模式 restart=always,随着docker启动 log-opt,最大日志10m 最多一个日志文件 restart=on-failure:1,当容器退出代码不为0时,最多重启1次 -m,限制内存如 -m 512M 例子中没用到 但可以你主动去限制容器的内存 --oom-score-adj,容器被 OOM killer 杀死的优先级,范围是[-1000, 1000],默认为 0。因为容器默认是无限制的 所以内存满的时候 系统就会去清理 从而容器就会挂掉,设置后 容器是不会被系统给干掉的。