【问题标题】:monit failed script no print out on stdout inside docker containermonit failed script no print out on stdout in docker container
【发布时间】:2015-10-08 19:11:48
【问题描述】:

我在 docker 容器中使用 monit。当我设置

检查地址为 8.8.8.182 的主机 dns

如果端口 53 失败,键入 udp 协议 dns 然后 exec "/bin/bash -c printf 'hello\n'"

失败时,容器控制台没有输出,docker logs my_container容器日志也没有输出

有什么想法吗?先感谢您。

【问题讨论】:

  • docker exec -it container_id bash在容器中获取一个shell,然后调试,启动monit,看看会发生什么
  • 启动monit,没有输出,monit可以通过monit summary检测到8.8.8.182上没有DNS服务。但没有其他调试信息。
  • 为什么投反对票?真的不知道吗?
  • 其实触发器没问题,monit成功检测到没有DNS服务,唯一的问题是exec部分,我可以像/bin/touch /tmp/afile一样工作,但没有stdout方法工作,例如@ 987654326@或echo
  • 你能告诉你docker runcommand吗? PS:我没有投反对票

标签: bash docker monit


【解决方案1】:

最后,我创建了一个 io 文件,并将信息输出到该文件中

set logfile /var/run/mylogfile

并定期读取该文件。

【讨论】:

    猜你喜欢
    • 2022-12-27
    • 1970-01-01
    • 1970-01-01
    • 2022-12-27
    • 2022-12-27
    • 2022-12-27
    • 1970-01-01
    • 2021-09-13
    • 2022-11-30
    相关资源
    最近更新 更多