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: