PostgreSQL——在Docker中的Ubuntu上运行Supervisord

我试图使用supervisor启动nginx和PostgreSQL,在docker container的boot上。使用下面的Dockerfile和supervisord.conf文件,上述的应用程序启动,但片刻之后停止。哪里错了?stderr或系统日志文件中没有错误消息。
Dockerfile:

1. [代码] [text] 

supervisord.conf:

2. [代码] [text] 

[supervisord]
nodaemon=true
 
[program:nginx]
command=/bin/bash -c "exec /usr/sbin/nginx -DFOREGROUND"
stdout_logfile=/var/log/nginx/%(program_name)s.log
stderr_logfile=/var/log/nginx/%(program_name)s.log
 
[program:postgresql]
command=/bin/bash -c "exec /usr/lib/postgresql/9.3/bin/postgres -D /var/pgsql/data"
stdout_logfile=/var/log/pgsql/%(program_name)s.log
stderr_logfile=/var/log/pgsql/%(program_name)s.log

--------------------------------------解决方案--------------------------------------------

你应该:
使用-n选项在前台运行supervisord。
在Dockerfile中使用ENTRYPOINT,而不是CMD。

------------------------------------华丽丽的分割线------------------------------------

------------------------------------华丽丽的分割线------------------------------------

PostgreSQL 的详细介绍请点这里
PostgreSQL 的下载地址请点这里

猜你喜欢

转载自www.linuxidc.com/Linux/2015-12/126173.htm