Tous les services opérationnels Devise EUR Aucun frais de mise en service Vous êtes à La Réunion ?
‹ Serveurs VPS et Docker

Uptime Kuma : surveiller ses sites avec Docker

Uptime Kuma est un outil libre de surveillance : il interroge vos sites, vos API ou vos serveurs à intervalle régulier et vous alerte quand l'un d'eux ne répond plus. Il s'installe en un conteneur Docker, avec une interface web sur le port 3001. Une fois installé, vous ajoutez une sonde par adresse à surveiller et vous choisissez comment être prévenu : e-mail, Telegram, Discord, Slack et bien d'autres.

Par Jonathan Dewaele · publié le

Ce guide suit le dépôt officiel d'Uptime Kuma, relu le 14 octobre 2026, dont la dernière version publiée est la 2.5.6. Le fichier compose est celui du projet, avec l'image louislam/uptime-kuma:2. Il faut Docker Engine et son extension Compose.

Où l'installer

Un outil de surveillance doit tourner ailleurs que ce qu'il surveille : si le serveur de vos sites tombe, une sonde installée dessus tombe avec lui et ne prévient personne. Installez Uptime Kuma sur un serveur distinct de celui qui héberge vos sites, ou au moins sur une autre machine.

Installer Uptime Kuma

  1. Créez un dossier et placez-vous dedans : mkdir ~/uptime-kuma && cd ~/uptime-kuma
  2. Créez le fichier compose.yaml ci-dessous. Il reprend le fichier officiel, avec une seule différence : le port n'est publié que sur l'adresse locale du serveur, 127.0.0.1.
  3. Lancez le conteneur : docker compose up -d
  4. Vérifiez qu'il tourne : docker compose ps
services:
  uptime-kuma:
    image: louislam/uptime-kuma:2
    restart: unless-stopped
    volumes:
      - ./data:/app/data
    ports:
      - "127.0.0.1:3001:3001"

Les données, sondes et historique compris, vivent dans le dossier data. Le dépôt prévient que les systèmes de fichiers réseau comme NFS ne sont pas pris en charge : gardez ce dossier sur le disque local du serveur.

Ouvrir l'interface sans l'exposer

Publié sur 127.0.0.1, le port 3001 n'est pas joignable depuis Internet. Pour la première connexion, passez par un tunnel SSH :

  1. Depuis votre ordinateur : ssh -L 3001:127.0.0.1:3001 utilisateur@adresse-du-serveur, et laissez la fenêtre ouverte.
  2. Ouvrez http://localhost:3001 dans le navigateur.
  3. Créez le compte administrateur demandé au premier lancement, avec un mot de passe long et unique.

Pour l'ouvrir ensuite sur un nom de domaine en HTTPS, passez par un proxy inverse. Uptime Kuma fonctionne par WebSocket, et sa page sur les proxys inverses donne la configuration de chacun :

  • avec Traefik, les étiquettes du routeur et traefik.http.services.uptime-kuma.loadbalancer.server.port=3001 ;
  • avec Nginx Proxy Manager, activez la prise en charge des WebSockets dans les réglages de l'hôte ;
  • avec Caddy lancé dans un conteneur, comme dans Un certificat SSL sur son VPS, une ligne reverse_proxy uptime-kuma:3001 sous le nom de domaine, les deux conteneurs étant sur un même réseau Docker ; reverse_proxy 127.0.0.1:3001 ne vaut que pour un Caddy installé directement sur le système.

Le conteneur doit alors rejoindre le réseau du proxy, et le port publié sur 127.0.0.1 peut être retiré.

Créer une sonde

  1. Cliquez sur le bouton d'ajout d'une sonde, « Add New Monitor » dans l'interface en anglais.
  2. Choisissez le type. HTTP(s) vérifie qu'une page répond ; HTTP(s) avec mot-clé (Keyword) vérifie en plus qu'un mot y figure, ce qui détecte une page d'erreur servie avec un code 200 ; TCP et Ping servent pour un service qui n'est pas du web.
  3. Donnez un nom, l'adresse complète, par exemple https://www.votre-domaine.fr, et l'intervalle entre deux vérifications.
  4. Enregistrez. La sonde passe au vert dès la première réponse correcte.

Les types sont nommés comme dans la liste des fonctions du dépôt ; l'intitulé exact peut varier d'une version à l'autre. L'interface existe en plusieurs langues, français compris, au choix dans les réglages.

Recevoir les alertes par e-mail

Les notifications se règlent dans les réglages, rubrique des notifications. Pour l'e-mail, choisissez le type SMTP et indiquez le serveur d'envoi de votre messagerie, votre adresse et votre mot de passe, puis cliquez sur le bouton de test avant d'enregistrer. Une notification réglée là se coche ensuite dans chaque sonde.

Utilisez le port 587 avec STARTTLS. Beaucoup d'hébergeurs de serveurs bloquent les ports 25 et 465 en sortie, et l'envoi échoue alors sans message clair.

Sur un VPS Hubspace

Docker et Compose sont installés à la livraison, et le compte admin les utilise sans sudo. Le pare-feu réseau placé devant le serveur ne laisse passer que 22, 80 et 443 : le port 3001 reste fermé depuis Internet, même publié par Docker, et le tunnel SSH ou un proxy inverse sont les voies prévues. Les ports 25 et 465 sortants sont bloqués contre le spam, le 587 reste ouvert : réglez la notification SMTP sur 587. Pour surveiller les sites d'un hébergement, un petit VPS à part fait l'affaire ; les serveurs VPS décrivent ce qui est livré.

Questions fréquentes

Uptime Kuma est-il gratuit ?

Oui, c'est un logiciel libre, publié sous licence MIT sur son dépôt. Vous ne payez que le serveur qui le fait tourner.

Comment le mettre à jour ?

Dans son dossier : docker compose pull, puis docker compose up -d --force-recreate, comme l'indique la page de mise à jour du projet. Les données du dossier data sont conservées ; une copie de ce dossier avant une mise à jour majeure reste prudente. Le détail est dans Mettre à jour un conteneur Docker.

Peut-on afficher une page d'état publique ?

Oui, Uptime Kuma sait publier une page d'état qui reprend les sondes choisies. Elle n'est visible de l'extérieur que si l'interface est servie par un proxy inverse sur un nom de domaine.

Articles liés