https://blog.csdn.net/menghuanbeike/article/details/79261828

https://blog.csdn.net/wennuanddianbo/article/details/77592401

部署项目服务器时,为了应对停电等情况影响正常web项目的访问,会把Docker容器设置为开机自动启动。


       在使用docker run启动容器时,使用--restart参数来设置:

[plain]  view plain  copy
  1. # docker run -m 512m --memory-swap 1G -it -p 58080:8080 --restart=always   
  2. --name bvrfis --volumes-from logdata mytomcat:4.0 /root/run.sh  
      

如果创建时未指定 --restart=always ,可通过update 命令设置

  1. docker update --restart=always xxx  


       还可以在使用on - failure策略时,指定Docker将尝试重新启动容器的最大次数。默认情况下,Docker将尝试永远重新启动容器。

[plain]  view plain  copy
  1. # sudo docker run --restart=on-failure:10 redis  
    如果上面讲的restart policies无法满足需求,也可以采用进程监控的管理方案,如upstart,systemd或者supervisor等等。
    这种方案中,进程监控服务运行在容器中。它可以监控一个进程是否运行,并可以在此进程没有运行的时候去启动该进程。而这发生的一切Docker都毫无知觉。
Docker不推荐此种方法来进行进程监控,理由很简单,这种方法和系统平台甚至linux发行版相关。
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐