【发布时间】:2017-10-10 14:54:38
【问题描述】:
crond 默认不在official postgres alpine image 中运行。我如何定义我的Dockerfile 以确保守护程序在后台运行?我希望它在默认情况下运行,如果可能的话,即使容器重新启动也是如此。
我尝试将CMD ["/usr/sbin/crond"] 添加到我的Dockerfile,但没有成功。有什么想法如何与postgres 结合使用?
更新
我已经添加了tianon的答案:
[...] 如果您必须在容器内运行 crond,我建议您改用 一个单独的容器,它只运行 crond(因此 Docker 可以 都跟踪它的生命周期,并在/如果它失败时重新启动它,机器 重启等)。您应该能够连接到 PostgreSQL 来自第二个容器的实例,但如果绝对必要,一个 可以使用 --network container:some-postgres 之类的东西来 直接加入数据库容器的网络命名空间。
【问题讨论】:
标签: postgresql docker cron daemon