{"id":13586496,"url":"https://github.com/dennyzhang/monitor-docker-slack","last_synced_at":"2025-04-07T15:32:06.380Z","repository":{"id":67456226,"uuid":"101566271","full_name":"dennyzhang/monitor-docker-slack","owner":"dennyzhang","description":":alarm_clock:  Get Slack Notifications, When Containers Run Into Issues","archived":false,"fork":false,"pushed_at":"2020-02-21T10:19:04.000Z","size":208,"stargazers_count":71,"open_issues_count":6,"forks_count":44,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-02-14T21:29:05.031Z","etag":null,"topics":["containers","devops","docker","monitoring","python","slack"],"latest_commit_sha":null,"homepage":"https://www.dennyzhang.com/docker_monitor","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dennyzhang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-27T16:45:16.000Z","updated_at":"2024-08-01T16:32:32.129Z","dependencies_parsed_at":null,"dependency_job_id":"fc4b859a-ca47-42d9-a1c6-48aa8e898e8b","html_url":"https://github.com/dennyzhang/monitor-docker-slack","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dennyzhang%2Fmonitor-docker-slack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dennyzhang%2Fmonitor-docker-slack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dennyzhang%2Fmonitor-docker-slack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dennyzhang%2Fmonitor-docker-slack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dennyzhang","download_url":"https://codeload.github.com/dennyzhang/monitor-docker-slack/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247399871,"owners_count":20932876,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["containers","devops","docker","monitoring","python","slack"],"created_at":"2024-08-01T15:05:36.581Z","updated_at":"2025-04-07T15:32:06.373Z","avatar_url":"https://github.com/dennyzhang.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"\u003ca href=\"https://github.com/DennyZhang?tab=followers\"\u003e\u003cimg align=\"right\" width=\"200\" height=\"183\" src=\"https://raw.githubusercontent.com/USDevOps/mywechat-slack-group/master/images/fork_github.png\" /\u003e\u003c/a\u003e\n\n[![Build Status](https://travis-ci.org/dennyzhang/monitor-docker-slack.svg?branch=master)](https://travis-ci.org/dennyzhang/monitor-docker-slack) [![Docker](https://raw.githubusercontent.com/USDevOps/mywechat-slack-group/master/images/docker.png)](https://hub.docker.com/r/denny/monitor-docker-slack/)\n\n[![LinkedIn](https://raw.githubusercontent.com/USDevOps/mywechat-slack-group/master/images/linkedin_icon.png)](https://www.linkedin.com/in/dennyzhang001) [![Github](https://raw.githubusercontent.com/USDevOps/mywechat-slack-group/master/images/github.png)](https://github.com/DennyZhang) \u003ca href=\"https://www.dennyzhang.com/slack\" target=\"_blank\" rel=\"nofollow\"\u003e\u003cimg src=\"http://slack.dennyzhang.com/badge.svg\" alt=\"slack\"/\u003e\u003c/a\u003e\n\n- File me [tickets](https://github.com/DennyZhang/monitor-docker-slack/issues) or star [the repo](https://github.com/DennyZhang/monitor-docker-slack)\n\n# Introduction\nGet Slack Notifications, When Containers Run Into Issues\n\nRead more: https://www.dennyzhang.com/docker_monitor\n\n# General Idea\n1. Start a container in the target docker host.\n2. This container will query status for all containers.\n\n```curl -XGET --unix-socket /var/run/docker.sock http://localhost/containers/json```\n\n3. Send slack notifications, we get matched of \"unhealthy\"\n\n# How To Use: Plain Container\n- Specify slack credentials via env\n\n```\nexport SLACK_CHANNEL=\"#XXX\"\nexport SLACK_USERNAME=\"XXX\"\nexport SLACK_TOKEN=\"xoxp-XXX-XXX-XXX-XXXXXXXX\"\nexport MSG_PREFIX=\"Monitoring On XX.XX.XX.XX\"\n```\n\n- Start container to check\n```\ncontainer_name=\"monitor-docker-slack\"\n# Stop and delete existing container\ndocker stop $container_name; docker rm \"$container_name\"\n\n# Start container to monitor docker healthcheck status\ndocker run -v /var/run/docker.sock:/var/run/docker.sock \\\n   -t -d -h $container_name --name $container_name \\\n   -e SLACK_CHANNEL=\"$SLACK_CHANNEL\" -e SLACK_USERNAME=\"$SLACK_USERNAME\" \\\n   -e SLACK_TOKEN=\"$SLACK_TOKEN\" -e MSG_PREFIX=\"$MSG_PREFIX\" \\\n   -e WHITE_LIST=\"$WHITE_LIST\" --restart=always \\\n   denny/monitor-docker-slack:latest\n\n# Check status\ndocker logs \"$container_name\"\n```\n\n# How To Use: Docker-compose\n```\nversion: '2'\nservices:\n  monitor-docker-slack:\n    container_name: monitor-docker-slack\n    image: denny/monitor-docker-slack:latest\n    volumes:\n     - /var/run/docker.sock:/var/run/docker.sock\n    environment:\n      SLACK_CHANNEL: \"#XXX\"\n      SLACK_USERNAME: \"XXX\"\n      SLACK_TOKEN: \"xoxp-XXX-XXX-XXX-XXXXXXXX\"\n      MSG_PREFIX: \"Monitoring On XX.XX.XX.XX\"\n    restart: always\n```\n\n# More customization\n- Add message prefix for the slack notification\n```\nexport MSG_PREFIX=\"Docker Env in Denny's env\"\n```\n\u003ca href=\"https://www.dennyzhang.com\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/DennyZhang/monitor-docker-slack/master/images/slack_prefix.png\"/\u003e \u003c/a\u003e\n\n- Skip checking certain containers by customizing WHITE_LIST env.\n```\nexport MSG_PREFIX=\"Docker Env in Denny's env\"\nexport WHITE_LIST=\"nodeexporter,ngin.*\"\n```\n\u003ca href=\"https://www.dennyzhang.com\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/DennyZhang/monitor-docker-slack/master/images/slack_whitelist.png\"/\u003e \u003c/a\u003e\n\nCode is licensed under [MIT License](https://www.dennyzhang.com/wp-content/mit_license.txt).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdennyzhang%2Fmonitor-docker-slack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdennyzhang%2Fmonitor-docker-slack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdennyzhang%2Fmonitor-docker-slack/lists"}