平时我们百度来的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。因为容器默认是无限制的 所以内存满的时候 系统就会去清理 从而容器就会挂掉,设置后 容器是不会被系统给干掉的。