我在 Docker 容器上安装了 Nginx,并尝试像这样运行它:
docker run -i -t -p 80:80 mydockerimage /usr/sbin/nginx
问题在于 Nginx 的工作方式是初始进程立即生成一个主 Nginx 进程和一些工作人员,然后退出。由于 Docker 只监视原始命令的 PID,因此容器会停止。
如何防止容器停止?我需要能够告诉它绑定到第一个子进程,或者阻止 Nginx 的初始进程退出。
nginx,像所有表现良好的程序一样,可以配置为不进行自我守护。
nginx
使用http://wiki.nginx.org/CoreModuledaemon off中描述的配置指令。
daemon off