博主QQ:819594300
博客地址:http://zpf666.blog.51cto.com/
有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持!
一、使用 Supervisor 来管理进程
Docker 容器在启动的时候开启单个进程,比如,一个 ssh 或者 apache 的 daemon 服务。但我们经常需要在一个机器上开启多个服务,这可以有很多方法,最简单的就是把多个启动命令放到一个启动脚本里面,启动的时候直接启动这个脚本。
例如:docker run –d 镜像 /run.sh
另外就是安装进程管理工具。
本节将使用进程管理工具 supervisor 来管理容器中的多个进程。使用 Supervisor 可以更好的控制、管理、重启我们希望运行的进程。
Supervisor是一个进程控制系统. 它是一个C/S系统(注意: 其提供WEB接口给用户查询和控制), 它允许用户去监控和控制在类UNIX系统的进程。
演示一下如何同时使用 ssh 和 apache 服务。
1)首先创建一个 Dockerfile,内容和各部分的解释如下。
dockerfile文件内容:
2)supervisor 配置文件内容:
4)使用方法
①开启路由转发功能和关闭selinux
②创建image
③查看镜像
④启动supervisor容器
⑤测试:访问容器提供的web和ssh服务
总结:dockersupervisor与前面所学的dockerfile的很相似,它们的区别是dockerfile使用的是run.sh脚本启动的应用进程,而docker supervisor使用supervisor进程管理工具开启的应用进程。用supervisor文件代替了run.sh脚本文件。