如何让Docker容器保持足够长时间以便New Relic发送跟踪异常?

时间:2017-03-06 15:10:57

标签: php docker newrelic

我们在Docker容器中运行php cli命令,并安装了New Relic deamon来跟踪异常。问题是New Relic在interval of 1 minute上发送异常跟踪,但是当我们的php进程因异常而崩溃时,容器会立即被杀死。

是否有(简单的)解决方案在php进程死亡后将容器保持活动约一分钟,例如将其包装在其他脚本/程序中?

1 个答案:

答案 0 :(得分:1)

感谢user2915097的评论让我思考,我们找到了解决方案。我们写了一个小脚本,我们使用容器的入口点并在脚本失败时休眠。

时钟守护PHP-入口点:

#!/bin/sh

eval "$@" || (echo 'Delaying exit for 60 seconds for New Relic to send its report...' && sleep 60)

要添加到Dockerfile的行:

COPY cron-php-entrypoint /usr/local/bin/

ENTRYPOINT ["cron-php-entrypoint"]