dennyzhang / monitor-docker-slack

:alarm_clock: Get Slack Notifications, When Containers Run Into Issues
https://www.dennyzhang.com/docker_monitor
73 stars 44 forks source link
containers devops docker monitoring python slack

Build Status Docker

LinkedIn Github slack

Introduction

Get Slack Notifications, When Containers Run Into Issues

Read more: https://www.dennyzhang.com/docker_monitor

General Idea

  1. Start a container in the target docker host.
  2. This container will query status for all containers.

curl -XGET --unix-socket /var/run/docker.sock http://localhost/containers/json

  1. Send slack notifications, we get matched of "unhealthy"

How To Use: Plain Container

export SLACK_CHANNEL="#XXX"
export SLACK_USERNAME="XXX"
export SLACK_TOKEN="xoxp-XXX-XXX-XXX-XXXXXXXX"
export MSG_PREFIX="Monitoring On XX.XX.XX.XX"

Start container to monitor docker healthcheck status

docker run -v /var/run/docker.sock:/var/run/docker.sock \ -t -d -h $container_name --name $container_name \ -e SLACK_CHANNEL="$SLACK_CHANNEL" -e SLACK_USERNAME="$SLACK_USERNAME" \ -e SLACK_TOKEN="$SLACK_TOKEN" -e MSG_PREFIX="$MSG_PREFIX" \ -e WHITE_LIST="$WHITE_LIST" --restart=always \ denny/monitor-docker-slack:latest

Check status

docker logs "$container_name"


# How To Use: Docker-compose

version: '2' services: monitor-docker-slack: container_name: monitor-docker-slack image: denny/monitor-docker-slack:latest volumes:

More customization

Code is licensed under MIT License.