From ac6eeae2e2bbd946fc92d5820c60f3bd59ec8c06 Mon Sep 17 00:00:00 2001 From: BeauTroll <-> Date: Mon, 29 Dec 2025 01:06:42 +0100 Subject: [PATCH] Add Docker socket access configuration for Docker monitoring probes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Configure portable Docker GID support to enable Docker container monitoring in Uptime Kuma. The DOCKER_GID environment variable allows the configuration to work across different servers where the docker group ID may vary. đŸ€– Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- .env.example | 6 ++++++ README.md | 34 ++++++++++++++++++++++++++++++++++ docker-compose.yml | 2 ++ 3 files changed, 42 insertions(+) diff --git a/.env.example b/.env.example index 43f300a..eba46af 100644 --- a/.env.example +++ b/.env.example @@ -5,7 +5,13 @@ # Ce domaine doit pointer vers votre serveur et Traefik doit ĂȘtre configurĂ© DOMAIN= +# GID du groupe Docker pour permettre l'accĂšs au socket Docker +# Pour obtenir cette valeur, exĂ©cutez: getent group docker | cut -d: -f3 +# Cette valeur est nĂ©cessaire pour que les sondes Docker fonctionnent +DOCKER_GID= + # Notes: # - Le domaine doit ĂȘtre configurĂ© dans votre DNS # - Traefik gĂ©nĂ©rera automatiquement un certificat Let's Encrypt # - Ne pas inclure http:// ou https://, juste le domaine +# - Le DOCKER_GID peut varier selon le serveur, Ă  configurer pour chaque environnement diff --git a/README.md b/README.md index 8a6f8b6..f4aaa41 100644 --- a/README.md +++ b/README.md @@ -64,6 +64,21 @@ DĂ©finissez votre domaine : DOMAIN=uptime.votredomaine.com ``` +**Pour activer les sondes Docker** (monitoring de conteneurs Docker), ajoutez Ă©galement le GID du groupe Docker : + +```bash +# Obtenir le GID du groupe docker +getent group docker | cut -d: -f3 +``` + +Ajoutez cette valeur dans le fichier `.env` : + +```env +DOCKER_GID=999 # Remplacez par la valeur obtenue +``` + +> **Note** : Le `DOCKER_GID` peut varier d'un serveur Ă  l'autre. Cette configuration doit ĂȘtre dĂ©finie pour chaque environnement (dev, staging, prod). + ### 3. CrĂ©er le rĂ©pertoire de donnĂ©es ```bash @@ -93,6 +108,7 @@ AccĂ©dez Ă  `https://uptime.votredomaine.com` pour configurer votre compte admin | Variable | Description | Exemple | |----------|-------------|---------| | `DOMAIN` | Nom de domaine pour accĂ©der Ă  Uptime Kuma | `uptime.example.com` | +| `DOCKER_GID` | GID du groupe Docker (requis pour les sondes Docker) | `999` | ### Premier dĂ©marrage @@ -254,6 +270,24 @@ docker exec uptime-kuma curl -f http://localhost:3001 || echo "Healthcheck faile # Si curl n'est pas disponible, modifier le healthcheck dans docker-compose.yml ``` +### Les sondes Docker ne fonctionnent pas (EACCES /var/run/docker.sock) + +Si vous voyez l'erreur `connect EACCES /var/run/docker.sock`, c'est un problĂšme de permissions : + +```bash +# 1. Obtenir le GID du groupe Docker +getent group docker | cut -d: -f3 + +# 2. Ajouter cette valeur dans .env +echo "DOCKER_GID=XXX" >> .env # Remplacez XXX par la valeur obtenue + +# 3. RedĂ©marrer le container +docker compose down +docker compose up -d +``` + +**Important** : Le `DOCKER_GID` varie selon le serveur. Configurez-le pour chaque environnement. + ## Commandes utiles ```bash diff --git a/docker-compose.yml b/docker-compose.yml index 8972b5b..403ed33 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,6 +7,8 @@ services: - no-new-privileges:true cap_drop: - ALL + group_add: + - "${DOCKER_GID}" networks: - traefik-net labels: