Antwa CodeAntwaCode Blog

Awesome Repo7 menit baca

Coolify: Self-Hosted PaaS Alternatif Vercel & Heroku

Coolify adalah self-hosted PaaS open-source alternatif Vercel, Heroku, dan Netlify. Deploy apps dan databases dengan mudah di server sendiri.

Baca dalam English

coolify Gambar: GitHub

Kamu pernah nggak sih, lagi enak-enak deploy aplikasi di Vercel atau Heroku, terus tiba-tiba harganya naik drastis? Atau mungkin kamu sudah capek harus bayar $20/bulan cuma buat host app kecil-kecilan? Kalau iya, mungkin ini saatnya kamu kenalan sama Coolify — sebuah platform PaaS (Platform as a Service) yang bisa kamu jalankan sendiri di server sendiri.

Coolify itu apa sih? Gimana cara install dan pakainya? Dan yang paling penting, apakah layak dijadikan alternatif Vercel atau Heroku? Yuk, kita bahas tuntas di artikel ini.

Apa Itu Coolify?

apa itu coolify

Coolify adalah platform PaaS (Platform as a Service) open-source yang bisa kamu self-host di server sendiri. Bayangkan Vercel atau Heroku, tapi jalannya di server kamu — dan gratis tanpa batas.

Proyek ini dibangun dengan PHP (Laravel) untuk backend-nya dan Svelte 5 untuk frontend-nya. Coolify didistribusikan di bawah lisensi Apache-2.0, jadi kamu bebas pakai, modifikasi, dan deploy sesuka hati.

Dari GitHub-nya, Coolify sudah mendapatkan 60.000+ stars — angka yang gila untuk sebuah proyek PaaS. Ini menunjukkan betapa banyak developer yang sudah mempercayai dan menggunakan Coolify di production.

Kenapa Coolify Menarik?

Ada beberapa alasan kenapa Coolify jadi trending di komunitas developer:

  1. Open-source & Gratis — Nggak ada biaya bulanan, nggak ada lock-in vendor. Semua ada di tangan kamu.
  2. 60K+ GitHub Stars — Bukan proyek abal-abal. Komunitasnya aktif dan terus berkembang.
  3. Built with Laravel — PHP yang matang dan stabil, bukan framework experimental.
  4. 280+ One-Click Services — Dari database sampai CMS, tinggal klik untuk deploy.
  5. Docker-based — Semua dijalankan dalam container, sehingga aman dan terisolasi.
  6. SSL Otomatis — HTTPS gratis via Let's Encrypt, setup dalam hitungan detik.
  7. Monitoring Built-in — CPU, RAM, disk, dan logs bisa kamu pantau langsung dari dashboard.

Fitur Utama Coolify

1. One-Click Deploy

Salah satu keunggulan terbesar Coolify adalah kemampuan one-click deploy. Kamu bisa deploy aplikasi cuma dengan beberapa klik tanpa harus paham Docker atau DevOps secara mendalam.

Supported frameworks untuk deploy antara lain:

  • Next.js, Nuxt.js, SvelteKit, Astro — Frontend framework populer
  • Laravel, Django, Rails, Express — Backend framework
  • Static sites — HTML/CSS/JS biasa
  • Docker Compose — Untuk aplikasi custom
# Deploy dari GitHub repository
# Cukup masukkan repo URL, pilih branch, dan klik Deploy!
# Coolify akan otomatis detect Dockerfile atau buildpack

2. Database Managed

Coolify menyediakan layanan database yang bisa kamu deploy dengan mudah:

  • PostgreSQL
  • MySQL / MariaDB
  • MongoDB
  • Redis
  • SQLite
  • Clickhouse
# Contoh: Deploy PostgreSQL dari Coolify
# 1. Buka Dashboard > Services
# 2. Klik "New" > PostgreSQL
# 3. Isi nama database
# 4. Klik Deploy
# 5. Selesai! Connection string langsung tersedia

Connection string-nya juga langsung bisa kamu copy-paste ke aplikasi kamu. Nggak perlu config manual.

3. SSL Otomatis (Let's Encrypt)

Nggak perlu lagi pusing setup SSL manual. Coolify otomatis mengkonfigurasi Let's Encrypt untuk setiap domain yang kamu tambahkan.

# Tambahkan domain di Coolify Dashboard:
# 1. Buka aplikasi > Settings > Domains
# 2. Masukkan domain: myapp.example.com
# 3. Tambahkan CNAME record di DNS kamu:
#    myapp.example.com -> your-server-ip
# 4. SSL otomatis aktif dalam beberapa detik

4. Monitoring & Logs

Dashboard Coolify punya monitoring built-in yang cukup lengkap:

  • Real-time CPU & RAM usage
  • Disk usage monitoring
  • Container logs (streaming)
  • Health checks
  • Deployment history

Kamu bisa memantau kondisi server dan aplikasi tanpa harus install tools tambahan seperti Grafana atau Datadog.

5. Docker-Based Architecture

Semua aplikasi dan services di Coolify berjalan dalam Docker containers. Ini memberikan beberapa keuntungan:

  • Isolasi — Setiap aplikasi terpisah dan nggak saling ganggu
  • Portability — Bisa dipindah ke server manapun yang ada Docker
  • Reproducibility — Build yang sama selalu menghasilkan output yang sama
  • Resource Control — Kamu bisa batasi CPU dan RAM per container

6. Collaborative Features

Coolify juga mendukung fitur kolaborasi untuk tim:

  • Multi-user access dengan role-based permission
  • Team management — Undang anggota tim
  • Webhook & notifications — Notifikasi ke Slack, Discord, atau email
  • Git integration — Auto-deploy saat push ke branch tertentu

7. 280+ Services

Ini yang bikin Coolify beda dari yang lain. Kamu bisa deploy 280+ services hanya dengan satu klik, termasuk:

  • CMS: WordPress, Ghost, Strapi, Directus
  • Monitoring: Uptime Kuma, Grafana, Prometheus
  • DevOps: Gitea, Drone CI, Woodpecker CI
  • Database: PostgreSQL, MySQL, MongoDB, Redis
  • Message Queue: RabbitMQ, Redis Pub/Sub
  • File Storage: MinIO, Nextcloud
  • Dan masih banyak lagi!

Instalasi Coolify

Prasyarat

Sebelum install Coolify, pastikan server kamu memenuhi requirements berikut:

  • OS: Ubuntu 20.04/22.04/24.04, Debian 11/12, atau OS berbasis Debian
  • RAM: Minimal 2GB (rekomendasi 4GB+)
  • Disk: Minimal 20GB free space
  • Access: SSH root atau sudo access
  • Domain: Domain yang mengarah ke IP server kamu (opsional tapi recommended)

Cara paling mudah install Coolify adalah menggunakan official install script:

# SSH ke server kamu
ssh root@your-server-ip
 
# Jalankan install script
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | sudo bash

Script ini akan:

  1. Install Docker dan Docker Compose jika belum ada
  2. Download semua images yang diperlukan
  3. Setup database PostgreSQL untuk Coolify itself
  4. Konfigurasi reverse proxy (Traefik)
  5. Generate secret keys dan credentials
  6. Start semua services

Proses install biasanya memakan waktu 3-5 menit tergantung kecepatan internet server kamu.

Install via Docker Compose (Manual)

Kalau kamu lebih suka setup manual, berikut Docker Compose-nya:

# docker-compose.yml
version: '3.8'
 
services:
  coolify:
    image: ghcr.io/coollabsio/coolify:latest
    container_name: coolify
    restart: always
    ports:
      - "8000:8000"
    volumes:
      - /data/coolify:/data/coolify
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - APP_ENV=production
      - APP_DEBUG=false
    networks:
      - coolify-network
 
  postgres:
    image: postgres:15-alpine
    container_name: coolify-db
    restart: always
    volumes:
      - postgres-data:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: coolify
      POSTGRES_USER: coolify
      POSTGRES_PASSWORD: your-secure-password-here
    networks:
      - coolify-network
 
volumes:
  postgres-data:
 
networks:
  coolify-network:
    driver: bridge
# Jalankan
docker compose up -d
 
# Cek status
docker compose ps

Setelah Install

Setelah install selesai, kamu bisa akses dashboard Coolify di:

http://your-server-ip:8000

Pertama kali buka, kamu akan diminta untuk membuat akun admin baru. Isi email dan password yang kuat, lalu login.

Konfigurasi Domain untuk Dashboard

Supaya dashboard nggak harus akses pakai IP, kamu bisa setup domain:

# Tambahkan A record di DNS provider kamu
coolify.yourdomain.com -> your-server-ip

Di Coolify Dashboard:

  1. Buka Settings > Instance
  2. Masukkan domain: coolify.yourdomain.com
  3. Simpan — SSL otomatis akan aktif

Cara Pakai Coolify

Deploy Aplikasi pertama

Oke, sekarang saatnya deploy aplikasi pertama kamu! Mari kita coba deploy aplikasi Next.js:

Langkah 1: Hubungkan Repository

# Di Coolify Dashboard:
# 1. Klik "New Application"
# 2. Pilih "From Git"
# 3. Hubungkan GitHub/GitLab/Bitbucket
# 4. Pilih repository kamu
# 5. Pilih branch (biasanya main)

Langkah 2: Konfigurasi Build

Coolify akan otomatis detect bahwa ini project Next.js. Kamu bisa override konfigurasi jika perlu:

# Contoh Dockerfile untuk Next.js
FROM node:20-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
 
FROM node:20-alpine AS runner
WORKDIR /app
COPY --from=builder /app/.next/standalone ./
COPY --from=builder /app/.next/static ./.next/static
COPY --from=builder /app/public ./public
 
EXPOSE 3000
ENV PORT 3000
CMD ["node", "server.js"]

Langkah 3: Deploy

# Klik tombol "Deploy" di dashboard
# Tunggu proses build selesai (biasanya 2-5 menit)
# Aplikasi akan otomatis accessible di subdomain

Deploy Database

Butuh database untuk aplikasi kamu? Tinggal klik:

# Di Coolify Dashboard:
# 1. Klik "New" > "PostgreSQL"
# 2. Nama: my-database
# 3. Username: myuser
# 4. Password: (generate random)
# 5. Klik "Deploy"
#
# Connection string akan tersedia di halaman service:
# postgresql://myuser:password@coolify-db:5432/my-database

Hubungkan Aplikasi dengan Database

Setelah database dan aplikasi deployed, kamu perlu menghubungkannya:

# Di halaman aplikasi > Environment Variables
# Tambahkan:
DATABASE_URL=postgresql://myuser:password@coolify-db:5432/my-database
// Contoh di Node.js / Next.js
// lib/db.js
import { Pool } from 'pg';
 
const pool = new Pool({
  connectionString: process.env.DATABASE_URL,
});
 
export default pool;
# Contoh di Python / Django
# settings.py
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'my-database',
        'USER': 'myuser',
        'PASSWORD': os.environ.get('DB_PASSWORD'),
        'HOST': 'coolify-db',
        'PORT': '5432',
    }
}

Deploy Docker Compose Custom

Kalau aplikasi kamu butuh multiple services, kamu bisa deploy pakai Docker Compose:

# Contoh: Deploy Laravel + Redis + Queue Worker
version: '3.8'
 
services:
  app:
    build:
      context: .
      dockerfile: Dockerfile
    container_name: laravel-app
    restart: always
    ports:
      - "8080:80"
    environment:
      - APP_ENV=production
      - APP_KEY=${APP_KEY}
      - DB_CONNECTION=pgsql
      - DB_HOST=postgres
      - DB_PORT=5432
      - DB_DATABASE=laravel
      - DB_USERNAME=laravel
      - DB_PASSWORD=${DB_PASSWORD}
      - REDIS_HOST=redis
    volumes:
      - ./storage:/var/www/html/storage
    depends_on:
      - postgres
      - redis
 
  queue:
    build:
      context: .
      dockerfile: Dockerfile
    container_name: laravel-queue
    restart: always
    command: php artisan queue:work --sleep=3 --tries=3
    environment:
      - APP_ENV=production
      - DB_HOST=postgres
      - REDIS_HOST=redis
    depends_on:
      - postgres
      - redis
 
  postgres:
    image: postgres:15-alpine
    container_name: laravel-db
    restart: always
    volumes:
      - postgres-data:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: laravel
      POSTGRES_USER: laravel
      POSTGRES_PASSWORD: ${DB_PASSWORD}
 
  redis:
    image: redis:7-alpine
    container_name: laravel-redis
    restart: always
 
volumes:
  postgres-data:
# Di Coolify:
# 1. New Application > Docker Compose
# 2. Paste docker-compose.yml di atas
# 3. Tambahkan environment variables
# 4. Klik Deploy

Setup Auto-Deploy via Webhook

Agar aplikasi otomatis update setiap kali push ke GitHub:

# Di Coolify Dashboard > Application > Source
# 1. Aktifkan "Auto Deploy"
# 2. Pilih branch: main
# 3. Webhook URL akan otomatis ter-generate
#
# Copy webhook URL dan tambahkan di GitHub:
# Repository > Settings > Webhooks > Add webhook
# Payload URL: https://coolify.yourdomain.com/webhook/xxxxx
# Content type: application/json
# Events: Just the push event

Monitor Aplikasi

Setelah deployed, kamu bisa memantau aplikasi dari dashboard:

# Di Coolify Dashboard > Application > Monitor
# - CPU Usage: Real-time graph
# - Memory Usage: Per-container stats
# - Network: In/Out traffic
# - Logs: Streaming logs dengan filter

Perbandingan: Coolify vs Vercel vs Heroku vs Netlify

FiturCoolifyVercelHerokuNetlify
HargaGratis (self-hosted)Free tier terbatas$7/mo minimumFree tier terbatas
Open Source✅ Apache-2.0
Self-Hosted✅ Ya❌ Tidak❌ Tidak❌ Tidak
Databases✅ 280+ services❌ Via addon✅ Via addon❌ Via addon
SSL✅ Otomatis✅ Otomatis✅ (paid)✅ Otomatis
Custom Domain✅ Gratis✅ Gratis✅ Gratis✅ Gratis
Server Side✅ Full control⚠️ Serverless✅ Yes⚠️ Functions
Docker Support✅ Full❌ No⚠️ Container stack❌ No
Deploy Speed⚠️ Depends on server⚠️ Depends on plan⚠️ Cold start⚠️ Depends
Vendor Lock-in✅ None❌ High⚠️ Medium❌ High
Monitoring✅ Built-in✅ Built-in⚠️ Basic✅ Basic
Team Collab✅ Yes✅ Yes✅ Yes✅ Yes
Min RAM2GB serverN/AN/AN/A
Ecosystem280+ servicesLimitedAddonsLimited

Kapan Harus Pakai Coolify?

  • Kamu punya server sendiri — VPS, dedicated server, atau bahkan Raspberry Pi
  • Budget terbatas — Nggak mau bayar $20-50/bulan buat hosting
  • Butuh full control — Mau akses ke server, logs, dan konfigurasi
  • Multi-service app — Butuh database + queue + cache dalam satu platform
  • Privacy-conscious — Data nggak boleh keluar dari infrastructure sendiri
  • Tim kecil — Butuh collaborative deployment tanpa overhead DevOps

Kapan Harus Pakai Vercel/Heroku?

  • Projek kecil — Static site atau app sederhana yang nggak butuh database
  • Zero maintenance — Nggak mau handle server sama sekali
  • Tim besar — Butuh enterprise features dan SLA
  • Global CDN — Butuh edge deployment di banyak region

Use Case: Homelab & Production

Homelab

Coolify sangat populer di komunitas homelab — orang-orang yang menjalankan server di rumah untuk belajar dan hosting layanan personal:

# Contoh homelab stack dengan Coolify:
# 1. Deploy Uptime Kuma (monitoring website)
#    - Klik "New" > "Uptime Kuma"
#    - Tambahkan domain: status.myhome.lan
#
# 2. Deploy Nextcloud (file sharing)
#    - Klik "New" > "Nextcloud"
#    - Tambahkan domain: cloud.myhome.lan
#
# 3. Deploy Gitea (self-hosted GitHub)
#    - Klik "New" > "Gitea"
#    - Tambahkan domain: git.myhome.lan
#
# 4. Deploy Ghost (blog)
#    - Klik "New" > "Ghost"
#    - Tambahkan domain: blog.myhome.lan
#
# Semua berjalan di satu VPS / mini PC!

Production Use Cases

Untuk use case production, Coolify juga sudah dipercaya banyak perusahaan:

  1. Startup MVP — Deploy MVP dalam hitungan menit, bukan hari
  2. Agency/Consultancy — Host semua project klien di satu platform
  3. SaaS Application — Full-stack app dengan database, queue, dan monitoring
  4. Internal Tools — Dashboard, admin panel, dan tools internal perusahaan
  5. API Backend — REST/GraphQL API dengan auto-scaling container
# Contoh production deployment:
# Server: 4 vCPU, 8GB RAM, 80GB SSD (≈ $20/bulan di Hetzner)
#
# Aplikasi yang bisa jalan:
# - Laravel app (main app)
# - PostgreSQL (database)
# - Redis (cache + queue)
# - MinIO (file storage)
# - Uptime Kuma (monitoring)
# - Gitea (source code)
# - Nginx Proxy Manager (reverse proxy)
#
# Total biaya: ~$20/bulan untuk SEMUA ini
# Bandingkan dengan Vercel Pro ($20) + PlanetScale ($39) + Upstash ($10)
# = $69/bulan

Tips & Best Practices

1. Resource Management

# Di Coolify Dashboard > Server > Resources
# Atur batasan untuk setiap container:
# - CPU: Max 2 cores per app
# - RAM: Max 1GB per app
# - Disk: Monitor usage regularly
#
# Ini mencegah satu app menghabiskan semua resource server

2. Backup Strategy

# Coolify menyimpan data di /data/coolify
# Setup backup regular:
sudo crontab -e
 
# Tambahkan:
0 2 * * * tar -czf /backup/coolify-$(date +\%Y\%m\%d).tar.gz /data/coolify
0 3 * * * docker exec coolify-db pg_dump -U coolify coolify > /backup/db-$(date +\%Y\%m\%d).sql

3. Security Hardening

# 1. Gunakan firewall (UFW)
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
 
# 2. Nonaktifkan SSH root login
sudo sed -i 's/PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
sudo systemctl restart sshd
 
# 3. Auto-update Coolify
# Di Dashboard > Settings > Updates
# Aktifkan "Auto Update"

4. Performance Tips

# Untuk server dengan RAM terbatas (< 4GB):
# 1. Gunakan Alpine images untuk semua services
# 2. Limit concurrent builds: Settings > Builds > Max concurrent: 1
# 3. Matikan monitoring yang nggak perlu
# 4. Gunakan swap sebagai safety net:
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

FAQ

Apakah Coolify aman untuk production?

Ya, Coolify menggunakan Docker container untuk isolasi, enkripsi data, dan SSL otomatis. Banyak perusahaan sudah menggunakannya di production. Namun, pastikan kamu juga mengikuti best practices keamanan seperti firewall, SSH hardening, dan backup regular.

Berapa minimal RAM yang dibutuhkan?

Minimum 2GB RAM, tapi rekomendasi 4GB+ untuk menjalankan beberapa services sekaligus. Kalau mau hemat RAM, gunakan Alpine images dan limit resource per container.

Bisa dipakai di VPS murah?

Tentu! Coolify bisa jalan di VPS seharga $5/bulan (1 vCPU, 2GB RAM) untuk projek kecil. Untuk production, VPS $10-20/bulan sudah sangat cukup.

Apakah ada panel admin yang user-friendly?

Ya! Coolify punya dashboard modern berbasis web yang sangat intuitif. Kamu bisa deploy, monitor, dan manage semua services dari satu halaman.

Bagaimana dengan support dan dokumentasi?

Coolify punya dokumentasi lengkap di docs.coollabs.io, komunitas aktif di Discord, dan GitHub Issues untuk bug reports. Untuk fitur enterprise, tersedia juga paid support dari tim Coolify.

Kesimpulan

Coolify adalah jawaban atas masalah yang selama ini dihadapi developer: bagaimana cara deploy aplikasi dengan mudah tanpa vendor lock-in dan biaya bulanan yang mahal.

Dengan 60K+ stars, dukungan 280+ services, dan arsitektur Docker-based, Coolify sudah siap menjadi alternatif serius untuk Vercel, Heroku, dan Netlify — terutama untuk kamu yang ingin:

  • Full control atas infrastructure
  • Biaya hosting yang predictable (bayar server aja!)
  • Fleksibilitas deploy apa saja
  • Privacy data yang lebih baik

Kalau kamu penasaran, coba install Coolify di VPS kamu sekarang. Dalam 5 menit, kamu sudah bisa punya platform deployment sendiri yang powerful dan gratis selamanya.

Links:


Artikel ini ditulis pada Agustus 2026. Fitur dan pricing mungkin berubah seiring waktu. Selalu cek documentation resmi untuk informasi terbaru.

Tulisan lain