Monitoring Aplikasi dengan Uptime Kuma: Setup Gratis di 10 Menit
Uptime Kuma adalah alternatif self-hosted untuk monitoring uptime yang bisa kamu setup sendiri secara gratis. Ini panduan lengkap dari install sampai notifikasi aktif.
Apa Itu Uptime Kuma?
Uptime Kuma adalah tool monitoring uptime open-source yang bisa di-self-host. Mirip dengan layanan berbayar seperti UptimeRobot atau Pingdom, tapi berjalan di server kamu sendiri — tanpa biaya langganan, tanpa limit monitor.
Fitur Utama
- Monitor HTTP, TCP, DNS, Ping, dan Docker container.
- Notifikasi ke Telegram, Slack, Discord, email, dan 90+ channel lainnya.
- Status page publik yang bisa dikustomisasi (ideal untuk komunikasi ke pengguna saat ada insiden).
- Dashboard yang responsif dan real-time.
Install via Docker (Paling Mudah)
docker run -d
--restart always
-p 3001:3001
-v uptime-kuma:/app/data
--name uptime-kuma
louislam/uptime-kuma:1
Buka browser ke http://your-server-ip:3001, buat akun admin, dan dashboard langsung bisa dipakai.
Install via Docker Compose (Direkomendasikan)
services:
uptime-kuma:
image: louislam/uptime-kuma:1
container_name: uptime-kuma
restart: always
ports:
- "3001:3001"
volumes:
- uptime-kuma-data:/app/data
volumes:
uptime-kuma-data:
Setup Notifikasi Telegram
- Buat bot Telegram via @BotFather, catat token bot.
- Mulai chat dengan bot, dapatkan Chat ID dari
https://api.telegram.org/bot{TOKEN}/getUpdates. - Di Uptime Kuma: Settings → Notifications → Add → pilih Telegram.
- Masukkan Bot Token dan Chat ID, klik Test.
Tambahkan Monitor Pertama
- Klik "Add New Monitor".
- Monitor Type: HTTP(s).
- URL:
https://khalimzone.com. - Heartbeat Interval: 60 detik.
- Pilih notification channel yang sudah dikonfigurasi.
- Save.
Expose Uptime Kuma dengan Nginx
server {
listen 443 ssl;
server_name status.khalimzone.com;
location / {
proxy_pass http://localhost:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}
}
Status Page Publik
Uptime Kuma punya fitur Status Page yang bisa kamu bagikan ke pengguna. Pergi ke Status Pages → Create New, pilih monitor mana yang ditampilkan, dan set custom domain. Pengguna bisa melihat uptime history dan status real-time tanpa perlu login.