Press ESC to close

Cara Membuat Docker Compose File

WhatsAppTelegramFacebookXThreadsCopy Link

Anda merasa repot harus menjalankan banyak container Docker satu per satu setiap kali ingin memulai proyek? Misalnya, satu untuk database, satu untuk backend, satu lagi untuk frontend—dan semuanya perlu diatur ulang setiap kali restart server. Ribet, bukan?

Nah, di sinilah Docker Compose datang sebagai penyelamat. Dengan hanya satu file konfigurasi, Anda bisa menjalankan beberapa container sekaligus, lengkap dengan pengaturan jaringan, volume, dan dependensinya.

Namun, banyak pemula sering bingung saat pertama kali membuat Docker Compose file.
“Bagaimana formatnya?”
“Harus disimpan di mana?”
“Bagaimana cara menulisnya dengan benar agar tidak error?”

Tenang—artikel ini akan menjadi panduan lengkap Anda.
Setelah membaca sampai akhir, Anda akan memahami:

  • Apa itu Docker Compose dan bagaimana cara kerjanya.
  • Struktur dasar file docker-compose.yml.
  • Langkah demi langkah membuat dan menjalankan Docker Compose.
  • Tips agar file Compose Anda lebih mudah dikelola.

Apa Itu Docker Compose?

Docker Compose adalah alat yang digunakan untuk mendefinisikan dan menjalankan aplikasi multi-container di Docker menggunakan satu file konfigurasi berformat YAML (docker-compose.yml).

Dengan Compose, Anda hanya perlu satu perintah:

docker-compose up -d

…dan semua container yang Anda definisikan akan langsung berjalan.
Tanpa perlu lagi menjalankan container satu per satu secara manual!


Struktur Dasar File Docker Compose

Sebelum membuat file Compose, pahami dulu struktur dasarnya:

version: '3'
services:
  nama_service:
    image: nama_image
    ports:
      - "host_port:container_port"
    volumes:
      - "host_path:container_path"
    environment:
      - VARIABLE=value

Mari kita bahas sedikit:

  • version → Menentukan versi format Compose (umumnya ‘3’ atau ‘3.8’).
  • services → Daftar container yang akan dijalankan.
  • image → Nama image Docker yang akan digunakan.
  • ports → Menghubungkan port antara host dan container.
  • volumes → Mengatur penyimpanan data agar tidak hilang.
  • environment → Menentukan variabel lingkungan (seperti username, password, dll).

Langkah-Langkah Membuat Docker Compose File

1. Siapkan Lingkungan Docker

Pastikan Docker dan Docker Compose sudah terinstal. Cek dengan:

docker --version
docker-compose --version

Jika belum terpasang, Anda bisa menginstalnya di Rocky Linux, Ubuntu, atau Windows melalui dokumentasi resmi Docker.


2. Buat File docker-compose.yml

Buat file baru di dalam folder proyek Anda:

nano docker-compose.yml

Lalu masukkan konfigurasi dasar. Contoh sederhana untuk aplikasi web berbasis Nginx dan database MySQL:

version: '3.8'

services:
  web:
    image: nginx:latest
    ports:
      - "8080:80"
    volumes:
      - ./html:/usr/share/nginx/html

  db:
    image: mysql:5.7
    environment:
      - MYSQL_ROOT_PASSWORD=root123
      - MYSQL_DATABASE=appdb
      - MYSQL_USER=user
      - MYSQL_PASSWORD=pass123
    volumes:
      - db_data:/var/lib/mysql

volumes:
  db_data:

Penjelasan singkat:

  • web → Menjalankan container berbasis Nginx dengan direktori ./html di host.
  • db → Container MySQL dengan variabel lingkungan dan volume untuk menyimpan data.
  • volumes: di bagian bawah → Mendefinisikan volume bernama db_data.

3. Jalankan Docker Compose

Setelah file selesai, jalankan perintah berikut untuk membuat dan menjalankan semua service:

docker-compose up -d

Opsi -d artinya berjalan di background.

Untuk memastikan semua container sudah aktif:

docker-compose ps

Jika Anda ingin menghentikannya:

docker-compose down

4. Melihat Log dan Status

Ingin melihat log masing-masing service? Gunakan:

docker-compose logs -f

Atau log spesifik untuk satu service:

docker-compose logs web

5. Tips Penting Saat Membuat Docker Compose

  • Gunakan indentasi (spasi) dengan benar. File YAML sangat sensitif terhadap spasi.
  • Gunakan versi terbaru Compose (3.8) agar kompatibel dengan Docker modern.
  • Pisahkan environment ke file .env jika ingin menjaga keamanan variabel seperti password.
  • Gunakan volume terpisah agar data tidak hilang saat container dihapus.

Anda sudah tahu cara membuat Docker Compose file dari nol — mulai dari struktur, sintaks, hingga menjalankannya dengan perintah tunggal. Dengan Compose, pengelolaan aplikasi multi-container menjadi lebih efisien dan mudah diatur.

Ingin melangkah lebih jauh?
Baca juga: Cara Menghubungkan Beberapa Container Menggunakan Docker Network — agar setiap service Anda bisa saling berkomunikasi dengan aman dan cepat.

WhatsAppTelegramFacebookXThreadsCopy Link