docker不正常停止,我怎么让它“告诉”我(使用邮件或其他人)

当dockerexception停止,我们不能第一次find它。
有什么方法可以通过邮件或其他方式发送给我吗?
我使用造船厂来pipe理它,但它有这个function。

我可以find一种方法来监视docker不小心停止并发送通知给用户吗?

Docker引擎有一个事件子系统,您可以将其提供给CLI或任何Docker API客户端。

最简单的访问方式是通过cli命令: docker events 。 你得到了很多事情的事件,你可能感兴趣的container事件是die但也killoompause ,并stopstart处理生命周期。 die事件包含一个exitCode和其他元数据。

以下事件日志来自docker run debian sleep 180

  • ctrl -c尝试中断是kill signal=2
  • 运行docker stop发送kill signal=15
  • 10秒钟后docker stop超时并发送docker stop kill signal=9
  • 然后,容器与exitCode=137死亡

事件日志:

 → docker events \ --filter event=start \ --filter event=stop \ --filter event=kill \ --filter event=die \ --filter event=oom \ --filter event=pause 2017-09-27T05:28:22.911051215Z container start bb9998ef9ce04930588760edfbe3da0c3d505980df333906ae5fa1bcf847726e (image=debian, name=mystifying_fermi) 2017-09-27T05:28:25.852465665Z container kill bb9998ef9ce04930588760edfbe3da0c3d505980df333906ae5fa1bcf847726e (image=debian, name=mystifying_fermi, signal=2) 2017-09-27T05:28:42.500055815Z container kill bb9998ef9ce04930588760edfbe3da0c3d505980df333906ae5fa1bcf847726e (image=debian, name=mystifying_fermi, signal=15) 2017-09-27T05:28:52.502913619Z container kill bb9998ef9ce04930588760edfbe3da0c3d505980df333906ae5fa1bcf847726e (image=debian, name=mystifying_fermi, signal=9) 2017-09-27T05:28:52.603362125Z container die bb9998ef9ce04930588760edfbe3da0c3d505980df333906ae5fa1bcf847726e (exitCode=137, image=debian, name=mystifying_fermi) 2017-09-27T05:28:53.028998070Z container stop bb9998ef9ce04930588760edfbe3da0c3d505980df333906ae5fa1bcf847726e (image=debian, name=mystifying_fermi) 

有一个pypi包docker-event-scripts ( github )让你运行一个类别/事件的脚本。 它基于相当广泛使用的docker-py库。

这正是文章“ Docker容器遇到问题时得到警报 ”

它build议不要使用普罗米修斯(有点矫枉过正),但监控docker – 松弛

https://www.dennyzhang.com/wp-content/uploads/denny/monitor_docker_compose.png