Setiap kali sebuah proyek mulai serius, pertanyaan yang sama selalu muncul: di mana kita deploy ini? Platform managed seperti Heroku, Railway, atau Render memang nyaman, tapi tagihan bisa melonjak cepat begitu traffic naik. VPS murah tersedia di mana-mana, tapi mengurus nginx, SSL, CI/CD, dan monitoring dari nol memakan waktu yang seharusnya bisa dipakai untuk membangun fitur.
Coolify hadir sebagai jalan tengah. Platform open source ini memberi pengalaman deployment yang mulus layaknya Heroku — SSL otomatis, integrasi Git, satu-klik deploy database — tapi semuanya berjalan di server milik sendiri. Tidak ada biaya per-seat, tidak ada lock-in ke infrastruktur orang lain, dan semua data tetap di tangan sendiri.
Artikel ini membahas apa itu Coolify, bagaimana arsitektur kerjanya, dan langkah praktis dari instalasi hingga deploy aplikasi pertama ke VPS.
Apa Itu Coolify dan Mengapa Relevan
Coolify adalah platform PaaS (Platform as a Service) yang bisa di-install di server mana saja — VPS, bare metal, bahkan Raspberry Pi. Setelah terinstall, Coolify bertindak sebagai lapisan orkestrasi yang mengelola Docker container, reverse proxy, SSL certificate, dan deployment pipeline, semuanya melalui satu dashboard web.
Proyek ini bersifat open source dengan lisensi Apache 2.0 dan meraih lebih dari 51.000 bintang di GitHub — angka yang mencerminkan betapa banyaknya developer yang mencari alternatif dari managed platform berbayar. Coolify dikembangkan oleh CoolLabs dan saat ini berada di versi v4 sebagai rilis stabil.
Yang membedakan Coolify dari tools sejenis seperti Dokploy adalah luasnya ekosistem layanan yang didukung: lebih dari 280 one-click services mulai dari database, message queue, monitoring stack, hingga self-hosted alternatives dari SaaS populer.
Cara Kerja Coolify di Balik Layar
Coolify tidak menciptakan abstraksi yang terlalu jauh dari teknologi yang sudah familiar. Di balik layar, setiap aplikasi dan layanan berjalan sebagai Docker container. Coolify hanya menjadi lapisan manajemen yang menyederhanakan konfigurasi, networking, dan deployment.
Reverse proxy yang digunakan adalah Caddy (default) atau Traefik, yang secara otomatis menangani routing domain dan pembaruan SSL certificate via Let’s Encrypt. Tidak perlu menulis konfigurasi nginx secara manual — cukup daftarkan domain di dashboard dan Coolify yang mengurus sisanya.
Hierarki sumber daya di Coolify mengikuti pola yang logis:
- Server — mesin fisik atau virtual tempat Coolify dan aplikasi berjalan
- Project — pengelompokan logis untuk satu inisiatif atau klien
- Environment —
production,staging, ataudevelopmentdalam satu project - Resource — aplikasi dari Git repository, Docker image, atau one-click service
Satu server bisa menjalankan banyak project, dan satu project bisa punya beberapa environment. Ini memungkinkan staging dan production berjalan di server yang sama tanpa saling mengganggu.
Persiapan Server Sebelum Instalasi
Coolify memiliki persyaratan server yang cukup ringan. Spesifikasi minimum yang direkomendasikan dokumentasi resmi:
| Komponen | Minimum | Rekomendasi |
|---|---|---|
| CPU | 2 core | 4 core |
| RAM | 2 GB | 8 GB |
| Storage | 30 GB | 80 GB+ |
| OS | Debian/Ubuntu LTS | Ubuntu 22.04 / 24.04 LTS |
Arsitektur AMD64 dan ARM64 keduanya didukung, termasuk Raspberry Pi dengan OS 64-bit.
Sebelum menjalankan skrip instalasi, pastikan beberapa hal berikut sudah disiapkan di server:
- Login sebagai
rootatau user dengan aksessudo - Port 8000 (dashboard Coolify), 80, dan 443 sudah terbuka di firewall
- Paket
curlsudah terinstall
Jangan install Coolify menggunakan Docker yang diinstall via snap. Gunakan instalasi Docker dari repositori resmi Docker. Snap Docker memiliki keterbatasan izin sistem yang akan menyebabkan Coolify gagal berfungsi.
Instalasi Coolify dengan Satu Perintah
Cara tercepat untuk memulai adalah menggunakan skrip instalasi resmi. Jalankan perintah berikut di server sebagai root:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
Jika login sebagai user biasa dengan akses sudo:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | sudo bash
Proses ini akan menginstall Docker (jika belum ada), mengunduh konfigurasi Coolify, membuat direktori data di /data/coolify/, dan menjalankan semua container yang diperlukan. Biasanya selesai dalam 2–5 menit tergantung kecepatan koneksi server.
Setelah instalasi selesai, terminal akan menampilkan URL akses dashboard — biasanya http://IP_SERVER:8000. Buka URL tersebut di browser.
Konfigurasi Awal Dashboard
Halaman pertama yang muncul adalah form registrasi untuk akun admin. Isi nama, email, dan password, lalu klik Register.
Segera buat akun admin setelah instalasi selesai. Dashboard Coolify yang baru terinstall terbuka untuk umum sampai akun pertama dibuat. Siapapun yang mengakses URL tersebut lebih dulu akan mendapat kendali penuh atas server.
Setelah login, Coolify akan meminta konfigurasi server pertama. Pilih localhost untuk setup di mana Coolify dan aplikasi berjalan di server yang sama. Klik Validate & continue — Coolify akan memverifikasi koneksi SSH ke localhost menggunakan key yang digenerate saat instalasi.
Struktur Project dan Environment
Sebelum deploy aplikasi, buat struktur project yang sesuai. Di sidebar kiri, pilih Projects lalu klik + Add.
Beri nama project sesuai inisiatif — misalnya layanan-internal atau portofolio. Setelah project terbuat, Coolify otomatis membuat satu environment bernama production. Tambahkan environment staging jika diperlukan.
Struktur ini memudahkan pengelolaan ketika project bertumbuh. Semua resource dalam satu environment berbagi jaringan Docker yang sama, sehingga aplikasi dan database dapat saling berkomunikasi lewat nama service tanpa perlu IP address.
Deploy Aplikasi dari Git Repository
Ini bagian yang paling sering digunakan. Dari dalam environment, klik + New Resource lalu pilih Application.
Menghubungkan Repository GitHub
Coolify mendukung koneksi ke GitHub, GitLab, Bitbucket, dan Gitea. Untuk GitHub, ada dua opsi:
- GitHub App — akses granular per-repository, cocok untuk tim
- Deploy Key — SSH key yang dideploy ke satu repository
Untuk setup personal, pilih Deploy Key. Coolify akan mengenerate SSH public key yang perlu ditambahkan ke pengaturan repository GitHub di bawah Settings > Deploy keys.
Setelah koneksi berhasil, pilih repository dan branch yang ingin dideploy.
Konfigurasi Build dan Runtime
Coolify menggunakan Nixpacks sebagai build pack default. Nixpacks secara otomatis mendeteksi bahasa dan framework dari isi repository — tidak perlu menulis Dockerfile untuk sebagian besar aplikasi populer.
Beberapa pengaturan yang perlu diperhatikan:
Build Command : (biasanya terdeteksi otomatis, bisa dikustomisasi)
Start Command : (perintah untuk menjalankan aplikasi)
Port : port yang diekspos aplikasi (wajib diisi)
Untuk aplikasi Node.js yang berjalan di port 3000, isi kolom Port dengan 3000. Coolify akan menghandle routing dari domain publik ke port internal ini.
Konfigurasi Domain dan SSL
Di tab Domains, masukkan domain yang ingin digunakan — misalnya app.contoh.id. Pastikan DNS domain sudah diarahkan ke IP server sebelum langkah ini.
Coolify otomatis menerbitkan SSL certificate dari Let’s Encrypt dan memperbarui sertifikat sebelum kedaluwarsa. Tidak perlu konfigurasi tambahan — cukup masukkan domain dan Coolify yang mengurus HTTPS.
Environment Variables
Tab Environment Variables menyediakan interface untuk mengatur variabel lingkungan aplikasi. Masukkan pasangan KEY=VALUE, misalnya:
DATABASE_URL=postgresql://user:password@localhost:5432/db_produksi
APP_KEY=base64:abc123...
NODE_ENV=production
Variabel ini tersimpan terenkripsi dan tidak akan pernah muncul di log deployment.
Setelah semua konfigurasi siap, klik Deploy. Coolify akan menarik kode dari repository, menjalankan build, dan menjalankan container baru. Progress build bisa dipantau secara real-time di log yang muncul di halaman yang sama.
Deploy Database dengan One-Click Service
Salah satu fitur paling praktis Coolify adalah kemampuan deploy database tanpa konfigurasi manual. Dari + New Resource, pilih Database lalu pilih jenis database yang dibutuhkan.
Coolify mendukung PostgreSQL, MySQL, MariaDB, MongoDB, Redis, dan beberapa lainnya. Setelah memilih jenis database, isi nama dan password, lalu klik Create & Start.
Dalam hitungan detik, database sudah berjalan. Coolify menampilkan connection string yang bisa langsung disalin ke environment variables aplikasi:
postgresql://coolify:password_yang_digenerate@postgres:5432/nama_database
Perhatikan bahwa hostname menggunakan nama service (postgres), bukan IP address. Ini bekerja karena aplikasi dan database berada dalam jaringan Docker yang sama di environment yang sama.
Aktifkan fitur Automatic Backup di pengaturan database. Coolify bisa menjadwalkan backup otomatis ke storage S3-compatible — termasuk layanan seperti Backblaze B2 atau Neo Object Storage — sehingga data terlindungi tanpa setup cron job manual.
Auto Deploy dari Git Push
Coolify mendukung deployment otomatis setiap kali ada push ke branch tertentu. Fitur ini bekerja melalui webhook — Coolify mengenerate URL webhook yang perlu ditambahkan ke pengaturan repository di GitHub.
Di halaman aplikasi, masuk ke tab General dan salin Webhook URL yang tersedia. Di GitHub, buka Settings > Webhooks > Add webhook, tempelkan URL tersebut, dan pilih event Just the push event.
Setelah ini, setiap git push ke branch yang dikonfigurasi akan otomatis memicu deployment baru di Coolify. Hasilnya tersedia di tab Deployments lengkap dengan log dan status tiap deployment.
Perbandingan dengan Alternatif Lain
Coolify bukan satu-satunya opsi di kategori self-hosted PaaS. Berikut gambaran posisi masing-masing platform:
| Platform | Model | Biaya | Ekosistem Layanan |
|---|---|---|---|
| Coolify | Self-hosted | Gratis (+ biaya VPS) | 280+ one-click services |
| Dokploy | Self-hosted | Gratis (+ biaya VPS) | Lebih terbatas |
| Vercel | Managed | Freemium / berbayar | Frontend-first |
| Railway | Managed | Berbayar per resource | Database + aplikasi |
| Dokku | Self-hosted | Gratis (+ biaya VPS) | Heroku buildpacks |
Jika sudah familiar dengan Dokploy atau Vercel, Coolify menawarkan ekosistem yang lebih lengkap untuk kebutuhan self-hosting jangka panjang — terutama karena dukungan one-click service yang sangat luas.
Kesimpulan
Coolify menghapus hambatan terbesar dari self-hosting: kompleksitas konfigurasi. Dengan instalasi satu perintah dan dashboard yang terstruktur, siapapun yang terbiasa dengan managed platform bisa langsung produktif di Coolify tanpa harus menjadi sysadmin berpengalaman. Untuk project yang mulai serius tapi tidak mau terbebani biaya managed service yang terus naik, Coolify adalah investasi awal yang sepadan — cukup siapkan VPS, jalankan satu skrip, dan infrastruktur deployment sudah siap digunakan.