Monitoring & Observabilité

ntfy

Serveur de notifications push auto-hébergé : un simple PUT ou POST HTTP alerte votre téléphone depuis un script, un pipeline CI/CD ou un outil de supervision.

À propos de ntfy

ntfy (prononcez « notify ») est un service de publication/abonnement fondé sur HTTP, publié sous licence Apache 2.0 (environ 32 000 étoiles GitHub, version 2.26.3). Vous publiez un message sur un sujet avec une requête HTTP ordinaire — `curl -d "Sauvegarde terminée" http://votre-vps/sauvegardes` — et tous les abonnés à ce sujet le reçoivent immédiatement : application mobile Android ou iOS, interface web, ou n'importe quel client HTTP. Le serveur est un binaire Go dans un conteneur unique, sous 30 Mo de RAM, avec un cache de messages SQLite ; par défaut les messages expirent au bout de douze heures.

Sa place dans le catalogue est celle d'un transport, pas d'un outil de surveillance : ntfy ne teste rien et ne mesure rien, il achemine. C'est la brique qui manque entre vos outils de supervision et votre poche. Uptime Kuma, Gatus, Changedetection.io, Grafana, Home Assistant, GitHub Actions, GitLab CI, AWX, une tâche cron ou un simple script Bash — tout ce qui sait émettre un appel HTTP peut publier sur votre serveur. Auto-hébergé sur un VPS ServOrbit, il vous donne des sujets privés en nombre illimité, sans quota d'envoi ni compte chez un tiers. Le contrôle d'accès s'ajoute quand vous en avez besoin, via l'outil en ligne de commande `ntfy`.

Ce qui est installé

Prêt au démarrage du VPS

OS compatibles
Ubuntu 24.04
Application
ntfy
Stack technique
DockerGo
RAM minimum
512 Mo
CPU minimum
1 vCPU
Port par défaut
8080
Accès
root par SSH

Fonctionnalités clés

  • Publication en une ligne : curl -d "Sauvegarde OK" https://votre-domaine.com/mon-sujet depuis n'importe quelle machine, ou curl -d "Sauvegarde OK" http://127.0.0.1:8080/mon-sujet depuis le VPS lui-même — sans bibliothèque cliente ni clé d'API
  • Réception sur Android, iOS, navigateur et interface web ; les abonnés reçoivent le même sujet en WebSocket ou SSE
  • Niveaux de priorité, de minimale à urgente, avec contournement du mode Ne pas déranger sur mobile pour les alertes critiques
  • Actions dans la notification : des boutons qui déclenchent un appel HTTP, ouvrent une URL ou lancent une commande sur l'appareil abonné
  • Envoi différé via l'en-tête X-Delay et pièces jointes jusqu'à 15 Mo via X-Attach
  • Contrôle d'accès optionnel : comptes, listes d'autorisations par sujet et jetons en publication seule ou abonnement seul, gérés par ntfy user, ntfy access et ntfy token

Quand utiliser cette solution ?

Alertes de pipeline CI/CD

Notifiez la fin d'une intégration continue sans passer par un espace de messagerie d'équipe : curl -d "Build #$BUILD_NUMBER en échec" https://votre-domaine.com/builds. Un runner de CI est une machine tierce : il lui faut l'adresse publique de votre serveur, donc un domaine attaché au VPS — sans domaine, ntfy n'écoute que sur la boucle locale et reste injoignable de l'extérieur. La méthode fonctionne ensuite telle quelle dans GitHub Actions, GitLab CI, Jenkins ou AWX, puisqu'il suffit que curl soit disponible. La notification arrive sur le téléphone à la seconde où le pipeline se termine.

Point de sortie unique pour vos outils de supervision

Uptime Kuma, Changedetection.io et Grafana gèrent ntfy comme canal de notification, et Gatus en fait autant. Pointez-les tous vers votre instance : service indisponible, disque plein, prix modifié — toutes les alertes arrivent dans la même application, avec un sujet distinct par source pour les distinguer d'un coup d'œil.

Contrôle des tâches planifiées

Encadrez vos scripts cron : 0 3 * * * /usr/local/bin/backup.sh && curl -d "Sauvegarde OK" http://127.0.0.1:8080/sauvegarde-nuit. Le cron tournant sur le VPS lui-même, il joint ntfy en local ; depuis une autre machine, visez https://votre-domaine.com/sauvegarde-nuit, ce qui suppose un domaine attaché. Le silence signale l'échec, la notification confirme l'exécution. Un appel curl en fin de tâche remplace un service tiers de surveillance de cron.

Guide

Déployer ntfy sur votre VPS

  1. Commander un VPS ServOrbit

    Une offre de 512 Mo de RAM est largement suffisante : ntfy consomme moins de 30 Mo au repos et n'a aucune dépendance lourde. Vous pouvez l'héberger sur un VPS qui fait déjà tourner Uptime Kuma ou vos applications, pour constituer une chaîne d'alerte entièrement auto-hébergée.

  2. Déployer ntfy depuis le Marketplace

    Dans votre espace client ServOrbit, ouvrez le Marketplace, catégorie Monitoring, sélectionnez ntfy et lancez le déploiement. Docker récupère l'image binwiederhier/ntfy:latest et démarre le serveur sur le port 8080. Aucun fichier de configuration ni compte n'est requis pour commencer.

  3. Se connecter la première fois

    ntfy démarre SANS aucun compte ni mot de passe : l'URL s'ouvre directement sur l'interface, et quiconque connaît l'adresse peut lire ET publier sur n'importe quel sujet. Si votre serveur est joignable depuis Internet, activez l'authentification avant de vous en servir sérieusement.

  4. Publier votre premier message

    Le conteneur écoute sur 127.0.0.1:8080, en local sur le VPS. Connectez-vous en SSH et testez avec curl -d "Bonjour depuis mon VPS" http://127.0.0.1:8080/mon-sujet. Ouvrez ensuite l'interface web par un tunnel — ssh -L 8080:127.0.0.1:8080 root@<ip> puis http://127.0.0.1:8080 — et sélectionnez le sujet mon-sujet pour voir le message arriver. Les sujets se créent à la première publication.

  5. Publier un sous-domaine pour l'accès externe

    Pour recevoir les notifications sur mobile ou les émettre depuis d'autres machines, le serveur doit être joignable depuis l'extérieur : c'est exactement le rôle du domaine. Attachez-en un à l'application depuis votre espace client ServOrbit, par exemple ntfy.votre-domaine.fr : ServOrbit pose lui-même le vhost, le certificat TLS et le renvoi vers le port 8080 local, et le conteneur est déjà configuré pour fonctionner derrière un proxy. Vos appareils publient et s'abonnent alors sur https://ntfy.votre-domaine.fr, sans numéro de port. HTTPS est également ce qui permet aux navigateurs de recevoir les notifications en arrière-plan.

  6. Abonner votre téléphone et brancher vos outils

    Installez l'application ntfy (Android via F-Droid ou Google Play, iOS via l'App Store), ajoutez l'URL de votre serveur et le nom du sujet. Configurez ensuite vos outils : dans Uptime Kuma, section Notifications, choisissez ntfy et renseignez l'URL du serveur et le sujet ; répétez pour Changedetection.io, Gatus ou Grafana avec un sujet différent par source.

ntfy est un service de notifications en publication/abonnement fondé sur HTTP et publié sous licence Apache 2.0. Vous envoyez un message sur un sujet par une requête PUT ou POST, et tout abonné le reçoit sous forme de notification push. L'auto-héberger sur votre VPS vous donne des sujets privés en nombre illimité, sans quota d'envoi, sans compte chez un tiers et sans dépendance à un service qui pourrait fermer : le canal d'alerte vous appartient de bout en bout.

Intégrer le bouton de déploiement

Vous maintenez un projet qui utilise ntfy ? Ce bouton permet à vos lecteurs de le déployer sur un VPS en un clic, sans lire de documentation Docker.

Deploy ntfy on ServOrbit
Markdown
[![Deploy ntfy on ServOrbit](https://servorbit.com/brand/deploy/button.svg)](https://servorbit.com/vps-cloud?template=ntfy&utm_source=deploy-badge&utm_medium=referral&utm_campaign=ntfy)
HTML
<a href="https://servorbit.com/vps-cloud?template=ntfy&utm_source=deploy-badge&utm_medium=referral&utm_campaign=ntfy"><img src="https://servorbit.com/brand/deploy/button.svg" alt="Deploy ntfy on ServOrbit" height="40"></a>

Le bouton pointe vers la commande d'un VPS avec le template présélectionné. L'image est servie depuis servorbit.com — rien à héberger de votre côté.

Besoin d'aide ?

Parcourez notre centre d'aide et notre FAQ, ou contactez notre équipe — rappel, WhatsApp ou e-mail.

Écrire sur WhatsApps'ouvre dans un nouvel onglet