Uptime Kuma is de gratis, self-hosted monitor die je sites en servers pingt en aan de bel trekt zodra ze offline gaan, en het opzetten kost ongeveer vijf minuten. De snelste route: draai één Docker-container, open poort 3001 in een browser, maak een adminaccount aan en voeg je eerste check toe. Deze gids laat zien hoe je Uptime Kuma in 2026 goed opzet — niet alleen de installatie, maar ook de twee dingen die de meeste tutorials overslaan: waar je het écht moet draaien en hoe je ervoor zorgt dat de meldingen je bereiken wanneer het ertoe doet.
De versie die er nu toe doet, is Uptime Kuma 2. De 2.x-lijn valt onder de MIT-licentie, levert een rootless Docker-image, verplaatste de UI naar Vue 3 en voegde MariaDB toe als optie naast het standaard SQLite. Voor één instantie die een handvol services in de gaten houdt, heb je aan de standaardinstellingen genoeg.
Wat is Uptime Kuma, en waarom zou je je eigen versie draaien?
Uptime Kuma is een open-source uptime- en statusmonitor: hij controleert of een website, API, container of poort reageert, registreert de responstijd en verstuurt een melding zodra een check faalt. Zie het als een self-hosted vervanging voor betaalde diensten als UptimeRobot, Pingdom of Better Stack — behalve dat je het zelf draait, dus geen maandbedrag, geen limiet op het aantal monitors, en je lijst met doelen verlaat nooit je eigen machine. Het ondersteunt HTTP(S)-, TCP-poort-, ping-, DNS-, keyword- en Docker-containerchecks, publiceert openbare statuspagina's en spreekt in versie 2 met meer dan 78 meldingskanalen, waaronder Telegram, Discord, Slack en e-mail. De keerzijde is de keerzijde van al het self-hosten: je bent zelf verantwoordelijk voor de uptime van je uptimemonitor. Dat is prima te doen, en de rest van deze gids gaat er vooral over hoe je het betrouwbaar maakt.
Uptime Kuma in één oogopslag
| Kenmerk | Details |
|---|---|
| Licentie / kosten | MIT, voor altijd gratis |
| Installatie | Eén Docker-container |
| Poort webinterface | 3001 |
| Opslag | SQLite (standaard) of MariaDB |
| Standaard checkinterval | 60 seconden |
| Monitortypen | HTTP(S), TCP, ping, DNS, keyword, Docker |
| Meldingen | 78+ kanalen (Telegram, Discord, Slack, e-mail…) |
| Statuspagina's | Ja, met een WYSIWYG-editor |
| Standaard login | Geen — je maakt de admin aan bij de eerste start |
Wat je nodig hebt voordat je begint
Je hebt een machine nodig die Docker kan draaien en aan blijft staan: een goedkope VPS, een homelab-machine of een NAS werken allemaal. De ene regel die al het andere bepaalt — draai Uptime Kuma niet op dezelfde server die het geacht wordt te bewaken. Als de machine die je app host onderuitgaat, gaat de monitor die je dat moet vertellen mee, en hoor je het van een boze klant in plaats van van je monitor. Een VPS van $4–5/maand in een andere regio (of bij een compleet andere provider) is de standaardopzet. Zet je hiervoor een verse server op? Beveilig die dan eerst met onze checklist voor het veilige eerste uur van een VPS voordat je iets blootstelt.
Verder wil je Docker en de Compose-plugin geïnstalleerd hebben, en — optioneel — een domeinnaam als je het dashboard via HTTPS wilt bereiken in plaats van via een kaal IP-adres en poort.
Uptime Kuma installeren met Docker
De versie met één commando, rechtstreeks uit de eigen documentatie van het project, krijgt je meteen aan de praat:
docker run -d --restart=always \
-p 3001:3001 \
-v uptime-kuma:/app/data \
--name uptime-kuma \
louislam/uptime-kuma:2
Voor alles wat je wilt behouden, gebruik je in plaats daarvan Compose, zodat de configuratie in een bestand staat dat je kunt back-uppen en versiebeheren. Sla dit op als docker-compose.yml:
services:
uptime-kuma:
image: louislam/uptime-kuma:2
container_name: uptime-kuma
volumes:
- uptime-kuma:/app/data
ports:
- "3001:3001"
restart: always
volumes:
uptime-kuma:
Start het vervolgens met docker compose up -d. Hoe dan ook, het belangrijkste onderdeel is het volume: uptime-kuma:/app/data is waar elke monitor, instelling en historiek zich bevindt. Raak je dat volume kwijt, dan raak je je hele configuratie kwijt, dus dat is het onderdeel dat je back-upt. Eén valkuil uit de documentatie — plaats die datamap niet op NFS; de ingebouwde database verdraagt dat niet en raakt beschadigd.
Open nu http://<your-server-ip>:3001 in een browser. Er is geen standaard gebruikersnaam of wachtwoord — het eerste scherm vraagt je om het adminaccount aan te maken, dus kies hier een sterk wachtwoord en bewaar het in je wachtwoordmanager. Dat is de hele installatie.
Je eerste monitor toevoegen
Klik op Add New Monitor en kies een type. Voor een website kies je HTTP(s), plak je de volledige URL en laat je het checkinterval om te beginnen op 60 seconden staan. Een paar instellingen kun je beter bewust instellen dan zomaar accepteren:
- Retries — zet dit op 2 of 3, zodat een enkel verloren pakket je niet om 3 uur 's nachts wakker maakt. Een monitor gaat pas op "down" nadat de retries zijn uitgeput.
- Keyword monitor — vertrouw niet op een 200-statuscode, maar laat Uptime Kuma bevestigen dat een woord als "login" of "checkout" daadwerkelijk in de pagina-inhoud voorkomt. Een server kan 200 teruggeven terwijl hij een foutpagina rendert, en dit vangt dat af.
- Upside-down mode — draait de logica om, zodat "up" betekent dat de check faalt, handig om te bevestigen dat iets niet bereikbaar is.
Voeg voor elke openbare service een monitor toe, plus één TCP- of pingcheck voor de onderliggende host zelf. Die splitsing vertelt je of het de app is die eruit ligt of de hele machine.
Meldingen instellen die je daadwerkelijk bereiken
Een monitor zonder melding is niet meer dan een dashboard waar niemand naar kijkt. Ga naar Settings → Notifications → Setup Notification, kies een kanaal, en dit is de stap die mensen overslaan: stuur de testmelding en bevestig dat hij aankomt voordat je erop vertrouwt. Een verkeerd geconfigureerd Telegram-token of een SMTP-wachtwoord dat stilletjes faalt is erger dan geen monitoring, want je gaat ervan uit dat je gedekt bent.
Stel minstens twee kanalen in op verschillende infrastructuur — bijvoorbeeld Telegram of Discord als de directe pushmelding, plus e-mail als back-up. Hangt je meldingsroute alleen van e-mail af en heeft je mailprovider een slechte dag op hetzelfde moment als je server, dan krijg je niets. Vink de melding na het aanmaken aan binnen de instellingen van elke monitor, zodat hij daadwerkelijk gekoppeld is; een melding die wel bestaat maar aan geen enkele monitor is gekoppeld, doet niets.
Waar zou je Uptime Kuma moeten draaien? Het deel dat de meeste gidsen overslaan
Uptime Kuma installeren is makkelijk; het goed plaatsen is wat een echte monitoringopzet onderscheidt van speelgoed. De kerngedachte: de monitor moet onafhankelijk kunnen falen van het ding dat hij bewaakt. In de praktijk komt dat neer op drie gewoontes.
Ten eerste: host het buiten je machine — een aparte VPS, idealiter bij een andere provider of in een andere regio dan je productiestack, zodat één datacenter-incident niet allebei kan platleggen. Ten tweede: houd het dashboard zelf privé. Het toont je hele infrastructuurkaart, dus laat poort 3001 niet open naar het internet; zet het achter een geauthenticeerde reverse proxy of bereik het via een privénetwerk. Onze gids over Tailscale als privé mesh-VPN behandelt de aanpak zonder open poorten. Ten derde: publiceer je een openbare statuspagina voor klanten, host dan ook de instantie van die pagina ergens neutraal — een statuspagina die samen met je site offline gaat, ondermijnt haar eigen doel.
Zet het achter HTTPS, back-up het en houd het actueel
Met drie afrondende stappen maak je van de installatie iets dat je een jaar lang kunt laten draaien:
- HTTPS. Een monitoringdashboard via kaal HTTP op een ruw IP-adres bereiken is prima voor vijf minuten en verkeerd voor permanent gebruik. Sluit TLS af met een reverse proxy, zodat je een echt certificaat en een nette hostnaam krijgt — onze gids voor de Caddy reverse proxy regelt automatische HTTPS in een paar regels.
- Back-ups. Alles zit in het
uptime-kuma-volume, dus maak er volgens een schema snapshots van; hetzelfde patroon uit onze gids voor het back-uppen van Docker-volumes is direct toepasbaar. Test één keer een restore, zodat je weet dat het werkt. - Updates. Uptime Kuma levert frequente point releases met fixes en nieuwe meldingsintegraties. Haal periodiek de nieuwste
:2-image binnen, of automatiseer het — zorgvuldig — met de aanpak uit onze Watchtower auto-updategids.
Veelgestelde vragen
Wat is de standaard login voor Uptime Kuma?
Die is er niet. In tegenstelling tot veel appliances komt Uptime Kuma zonder standaard gebruikersnaam of wachtwoord. Bij het eerste bezoek aan poort 3001 vraagt het je om het adminaccount aan te maken, dus de inloggegevens zijn wat jij instelt. Ben je buitengesloten, dan reset je door de datavolume van de container te benaderen in plaats van via een fabrieksstandaard.
Is Uptime Kuma echt gratis?
Ja. Het is open-source onder de MIT-licentie, zonder betaalde variant, zonder limiet op het aantal monitors en zonder account. Je enige kosten zijn de server waarop je het draait en je tijd. Dat is de belangrijkste reden dat het de standaard self-hosted keuze is boven UptimeRobot of Pingdom voor mensen die al hun eigen infrastructuur draaien.
Kan Uptime Kuma Docker-containers monitoren?
Ja. Naast HTTP-, TCP-, ping- en DNS-checks heeft het een speciale Docker-monitor die de containerstatus via de Docker-socket bewaakt, zodat je een melding kunt krijgen wanneer een specifieke container stopt, in plaats van alleen wanneer zijn blootgestelde poort onbereikbaar wordt.
Heeft Uptime Kuma een database nodig?
Geen aparte voor een normale opzet. Het slaat standaard alles op in een ingebouwde SQLite-database binnen het /app/data-volume. Versie 2 voegde optionele MariaDB-ondersteuning toe voor grote of hoogfrequente installaties, maar de meeste gebruikers met één instantie hebben dat nooit nodig.
Hoe vaak controleert Uptime Kuma een monitor?
Het standaardinterval is 60 seconden, en je kunt elke monitor bijstellen tot 20 seconden of oplopend tot uren. Combineer een kort interval met een retrycount van 2–3, zodat korte netwerkhaperingen geen valse alarmen veroorzaken.
Sources
- Uptime Kuma — GitHub-repository — MIT-licentie, huidige versie 2, officieel Docker-commando
- Uptime Kuma — officiële site — Docker-installatie met één regel en poort-/volumedetails
- Uptime Kuma — How to Install (wiki) — Docker-, Compose- en hostingopties met één commando
- LinuxToday — Uptime Kuma 2.0 arrives with MariaDB support and UI refresh — rootless image, Vue 3, SQLite/MariaDB-opslag
- Tech Edu Byte — Uptime Kuma 2.1 notifications and stability — recente release notes van v2.1 en stabiliteitsupdates
- Better Stack — A Complete Guide to Monitoring With Uptime Kuma — monitors aanmaken, meldingen en statuspagina's
Waqas Ahmed Waseer
Waqas Ahmed Waseer is ontwikkelaar en automation-builder met meer dan 8 jaar ervaring in het bouwen van productiesystemen die door 100.000+ mensen worden gebruikt. Hij bouwt custom multi-tenant SaaS, AI-automatisering (n8n, LLM-workflows, WhatsApp-bots) en hostinginfrastructuur (WHM/cPanel, CloudLinux) — en is de maker van WaSphere, FlowMaticX en het hostingmerk WaseerHost. 100+ projecten opgeleverd voor mkb, bureaus en gefinancierde startups.



