Datacenter Jakarta, Indonesia Disk NVMe · KVM Bayar QRIS, tanpa kartu kredit Mulai Rp20.000/bulan
Aplikasi

Install Docker & Compose di VPS

Cara memasang Docker Engine dan Compose di VPS KVM Ubuntu 24.04 atau Debian 12, menambah user ke grup docker, memasang Portainer, dan tips disk NVMe & log.

4 Oktober 2026 · 6 menit baca · Tim VPS Indonesia

Semua paket VPS kami memakai KVM, jadi Docker terpasang persis seperti di server fisik — tanpa batasan khas container hosting. Untuk Compose beberapa layanan, mulai dari Basic 2 vCPU; untuk Coolify/Dokploy, Standar 6 GB.

1. Instal Docker Engine (skrip resmi)

apt update && apt -y upgrade
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
systemctl enable --now docker
docker --version && docker compose version

Skrip resmi memasang Docker Engine, CLI, containerd, dan plugin Compose v2 untuk Ubuntu 24.04/22.04 dan Debian 12/11.

2. Jalankan Docker tanpa sudo

usermod -aG docker deploy   # ganti dengan user non-root kamu
# logout-login agar grup berlaku

3. Uji dengan Compose

Buat ~/apps/kuma/compose.yml:

services:
  uptime-kuma:
    image: louislam/uptime-kuma:1
    container_name: uptime-kuma
    restart: unless-stopped
    ports:
      - "127.0.0.1:3001:3001"
    volumes:
      - ./data:/app/data
cd ~/apps/kuma && docker compose up -d

Perhatikan 127.0.0.1:3001 — layanan hanya terbuka lokal; publikasikan lewat reverse proxy (bagian 5) agar punya HTTPS.

4. Portainer (opsional, GUI)

docker volume create portainer_data
docker run -d -p 127.0.0.1:9443:9443 --name portainer --restart=always \
  -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data \
  portainer/portainer-ce:lts

5. Reverse proxy + SSL otomatis dengan Caddy

Pasang Caddy sebagai container atau paket sistem, lalu Caddyfile:

status.domainmu.com {
    reverse_proxy 127.0.0.1:3001
}

Caddy mengurus sertifikat Let’s Encrypt otomatis. Alternatif: Nginx Proxy Manager (GUI) atau Traefik (label Docker).

6. Tips untuk VPS

  • Batasi log container agar disk tidak penuh: di /etc/docker/daemon.json → {"log-driver":"json-file","log-opts":{"max-size":"10m","max-file":"3"}} lalu systemctl restart docker.
  • Bersihkan image lama berkala: docker system prune -af --volumes (hati-hati: menghapus volume tak terpakai).
  • Swap membantu paket kecil saat build: lihat checklist keamanan bagian swap.
  • Firewall: Docker menulis aturan iptables sendiri; port yang dipublikasikan ke 0.0.0.0 akan terbuka walau ufw aktif. Ikat ke 127.0.0.1 seperti contoh di atas.
  • Disk NVMe membuat docker pull dan build layer jauh lebih cepat — manfaatkan dengan cache build.

Berikutnya

Praktikkan

Paket yang cocok untuk panduan ini

Basic

2 vCPU untuk build & proses paralel.

Rp40.000/bulan

  • 2 vCPU Intel Xeon
  • 2 GB RAM
  • 40 GB NVMe
  • Jakarta · IP publik

Lite

VPS 50 ribu — 2 vCPU, 3 GB, serba bisa.

Rp50.000/bulan

  • 2 vCPU Intel Xeon
  • 3 GB RAM
  • 40 GB NVMe
  • Jakarta · IP publik

Mulai dari Rp20.000, aktif dalam hitungan menit

Pilih paket sesuai kebutuhan, bayar via QRIS, dan server Jakarta kamu siap dipakai. Upgrade kapan saja tanpa instal ulang.