Last chance! 50% off DataCamp Premium
Sale ends in
Apakah Anda sudah menjalankan Docker dan paham perintah dasar, tetapi lelah memulai container satu per satu?
Docker Compose adalah alat yang memungkinkan Anda mendefinisikan dan menjalankan aplikasi multi-container dari satu berkas YAML. Bagian yang membingungkan adalah ada dua versi yang beredar: binary mandiri lama (v1) dan plugin CLI yang lebih baru (v2). Kebanyakan artikel instalasi tidak menyebutkan versi mana yang digunakan, sehingga Anda mengikuti langkah-langkah yang tidak sesuai dengan setelan Anda.
Docker Compose v2 adalah plugin yang dibundel dengan instalasi Docker modern, sehingga memudahkan cara menginstal, menjalankan, dan memverifikasinya. Prosesnya tidak lagi se-manual dulu.
Dalam artikel ini, saya akan memandu Anda menginstal Docker Compose di Linux, macOS, dan Windows - dengan cara yang tepat, menggunakan v2.
Baru mengenal konsep virtualisasi dan kontainerisasi? Baca artikel Docker untuk Pemula kami untuk praktik langsung.
Pertama-tama, Anda memerlukan Docker Engine di mesin Anda. Docker Compose tidak berjalan sendiri - ia memerlukan Docker untuk berfungsi.
Jalankan perintah ini untuk memeriksa versi Docker Anda:
docker --version

Versi Docker yang terpasang
Jika Docker belum terinstal, hentikan di sini dan instal terlebih dahulu. Jika sudah terinstal, Anda bisa memeriksa apakah Compose sudah tersedia:
docker compose version

Versi Docker Compose yang terpasang
Jika itu menampilkan nomor versi, selesai - Compose v2 sudah dibundel dengan instalasi Docker Anda. Anda bisa langsung lompat ke bagian verifikasi.
Jika malah menampilkan pesan umum perintah tidak ditemukan, lanjutkan membaca.
Inilah perbedaan kunci yang perlu Anda ketahui:
Docker Compose v1 adalah binary mandiri warisan. Anda memanggilnya dengan docker-compose (dengan tanda hubung). Ini sudah usang dan tidak lagi dipelihara.
Docker Compose v2 adalah plugin CLI yang dikirim bersama Docker modern. Anda memanggilnya dengan docker compose (tanpa tanda hubung).
Jika Anda menggunakan instalasi Docker terbaru, hampir pasti Anda sudah memiliki v2. Sisa artikel ini berasumsi menggunakan v2.
Di Linux, ada dua cara untuk mendapatkan Docker Compose. Yang pertama menggunakan repositori resmi Docker - ini yang direkomendasikan. Yang kedua adalah instalasi manual yang berguna saat Anda tidak bisa menggunakan manajer paket atau memerlukan versi tertentu.
Metode ini membuat Compose terikat dengan instalasi Docker Anda, sehingga pembaruannya tetap sinkron.
Jika Anda belum memasang Docker Engine, siapkan dulu repositori resmi apt milik Docker:
# Add Docker's GPG key
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
Sekarang instal Docker Engine dan plugin Compose sekaligus:
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Paket docker-compose-plugin adalah yang menyediakan docker compose sebagai perintah CLI. Verifikasi bahwa ini berfungsi:
docker compose version

Versi Docker Compose pada VM Ubuntu
Selesai.
Gunakan metode ini saat Anda memerlukan versi Compose tertentu, atau saat lingkungan Anda tidak mendukung repositori Docker.
Mulailah dengan mengunduh rilis terbaru langsung dari GitHub. Ganti v5.0.1 dengan versi yang Anda butuhkan:
DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker}
mkdir -p $DOCKER_CONFIG/cli-plugins
curl -SL https://github.com/docker/compose/releases/download/v5.0.1/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose
Buat binary dapat dieksekusi:
chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose
Terakhir, verifikasi instalasinya:
docker compose version

Versi Docker Compose pada VM Ubuntu
Satu hal yang perlu diingat adalah instalasi manual tidak memperbarui secara otomatis. Jika Anda memasang binary lalu lupa, Anda bisa saja menjalankan versi usang dengan bug atau masalah keamanan yang sudah diketahui. Jika memilih cara ini, biasakan memeriksa halaman rilis Docker Compose dari waktu ke waktu.
Di macOS, Anda tidak perlu memasang Docker Compose secara terpisah - ini sudah dibundel dengan Docker Desktop.
Unduh Docker Desktop dari situs resmi Docker. Pastikan memilih versi yang sesuai dengan chip Anda - Apple Silicon (M1-M5) atau Intel.
Setelah terpasang, buka Docker Desktop dan biarkan hingga selesai memulai. Lalu verifikasi Compose tersedia dengan menjalankan perintah ini:
docker compose version

Versi Docker Compose di macOS
Selesai. Compose v2 siap digunakan.
Jika Anda lebih suka mengelola alat dengan Homebrew dan tidak memerlukan antarmuka GUI penuh Docker Desktop, Anda dapat memasang Docker dan Compose melalui Homebrew:
brew install docker
brew install docker-compose
Jika memilih cara ini, ingat bahwa Homebrew memasang Docker Engine tanpa aplikasi Desktop. Ini baik-baik saja untuk penggunaan CLI, tetapi Anda akan kehilangan fitur seperti Docker Dashboard dan pembaruan otomatis. Bagi sebagian besar pengguna macOS, Docker Desktop adalah jalur yang lebih mudah.
Seperti macOS, Windows mendapatkan Docker Compose secara otomatis melalui Docker Desktop. Tidak perlu instalasi terpisah.
Sebelum menginstal Docker Desktop, Anda perlu mengaktifkan WSL2 (Windows Subsystem for Linux 2). WSL2 memungkinkan Docker menjalankan kernel Linux asli di Windows, yang menjadi dasar cara kerja container di platform ini. Untuk mengaktifkannya, buka PowerShell sebagai Administrator dan jalankan:
wsl --install
Restart mesin Anda saat diminta. Lalu unduh dan instal Docker Desktop dari situs resmi Docker.
Selama pemasangan, pastikan opsi "Use WSL2 instead of Hyper-V" dicentang. Setelah Docker Desktop berjalan, verifikasi Compose tersedia - Anda bisa melakukannya di PowerShell atau terminal WSL Anda:
docker compose version
Jika Anda mengalami galat "permission denied", biasanya salah satu dari dua hal berikut:
docker apa pun dapat berfungsi.docker di dalam WSL:sudo usermod -aG docker $USER
Sekarang cukup keluar dan masuk kembali ke WSL agar perubahan diterapkan.
Setelah Anda menginstal Docker Compose, jalankan perintah ini untuk memastikan semuanya berfungsi:
docker compose version
Anda akan melihat keluaran seperti ini:

Versi Compose yang terpasang
Nomor versi yang tepat akan berbeda tergantung kapan Anda membaca, tetapi selama Anda melihat v5.0.1 atau yang lebih baru, Anda siap melanjutkan.
Jika Anda melihat docker compose: command not found, Compose belum terinstal atau tidak ada di PATH Anda. Loncat ke bagian pemecahan masalah di bawah.
Anda mungkin melihat beberapa artikel online menggunakan docker-compose dengan tanda hubung. Berikut perbedaannya:
docker-compose adalah perintah v1 warisan. Ini adalah binary Python mandiri yang dipasang terpisah dari Docker.
docker compose (tanpa tanda hubung) adalah plugin CLI v2, dibangun langsung ke dalam Docker CLI.
Docker menghentikan dukungan v1 pada 2023, sehingga docker-compose tidak lagi dipelihara. Jika Anda masih memilikinya, Anda bisa memeriksa versi mana yang dirujuk:
docker-compose --version
Jika itu menampilkan versi 1.x.x, Anda menjalankan binary lama. Copot pemasangannya dan gunakan docker compose ke depannya. Perintahnya hampir identik, tetapi v2 lebih cepat dan aktif dipelihara.
Cara Anda memperbarui Compose bergantung pada bagaimana Anda menginstalnya.
Di macOS dan Windows, Docker Desktop menangani semuanya untuk Anda, jadi cukup buka aplikasi, masuk ke Settings > Software Updates, dan biarkan memperbarui jika diperlukan. Compose akan ikut diperbarui bersama Docker.
Di Linux dengan manajer paket, jalankan berikut ini:
sudo apt-get update
sudo apt-get upgrade docker-compose-plugin
Perintah itu mengambil versi terbaru dari repositori resmi Docker.
Jika Anda menginstal secara manual, Anda perlu mengulangi langkah unduhan dengan nomor versi baru. Periksa halaman rilis Docker Compose untuk versi terbaru, lalu ganti binary-nya:
curl -SL https://github.com/docker/compose/releases/download/v5.0.2/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose
chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose
Setelah pembaruan apa pun, cukup verifikasi versi baru sudah aktif:
docker compose version
Tidak ada lagi yang perlu dilakukan.
Langkah pencopotan bergantung pada bagaimana Anda memasang Compose sebelumnya.
Jika Anda memasang melalui manajer paket di Linux, hapus plugin dengan perintah ini:
sudo apt-get remove docker-compose-plugin
Jika Anda memasang secara manual, cukup hapus binary-nya:
rm $DOCKER_CONFIG/cli-plugins/docker-compose
Jika Anda masih memiliki binary v1 mandiri lama di sistem Anda, temukan dan hapus dengan perintah ini:
sudo rm /usr/local/bin/docker-compose
Setelah menghapus, cukup periksa ulang bahwa sudah hilang dengan menjalankan docker compose version. Jika perintah mengembalikan galat, pencopotan berhasil.
Memasang dan mencopot Docker Compose itu mudah, tetapi masih ada beberapa hal yang bisa salah. Berikut cara memperbaiki kemungkinan masalah yang mungkin Anda temui.
Ini berarti Compose belum terinstal, atau Docker tidak dapat menemukannya. Pertama, pastikan Docker sendiri berjalan:
docker --version
Jika Docker baik-baik saja tetapi Compose hilang, cukup pasang ulang pluginnya:
sudo apt-get install docker-compose-plugin
Jika Anda melihat galat permission denied saat menjalankan docker compose, kemungkinan pengguna Anda tidak memiliki akses ke socket Docker. Tambahkan diri Anda ke grup docker:
sudo usermod -aG docker $USER
Keluar dan masuk kembali agar perubahan diterapkan. Di Docker Desktop (macOS/Windows), pastikan aplikasinya benar-benar berjalan sebelum Anda mencoba perintah apa pun.
Jika Compose berperilaku tidak seperti biasanya, periksa versi yang benar-benar Anda jalankan:
docker compose version
Jika Anda menggunakan versi lama, ikuti langkah pembaruan yang dibahas di bagian sebelumnya. Jika Anda memiliki v1 dan v2 sekaligus, itu kemungkinan sumber kebingungan.
Memiliki docker-compose (v1) dan docker compose (v2) pada mesin yang sama dapat menyebabkan konflik. Periksa apakah v1 masih ada dengan perintah ini:
which docker-compose
Jika mengembalikan sebuah path, hapus:
sudo rm $(which docker-compose)
Gunakan docker compose (tanpa tanda hubung) ke depannya.
Jika Docker terinstal tetapi perintah tidak ditemukan, direktori plugin CLI mungkin tidak ada di PATH Anda. Periksa lokasi binary Compose:
ls $DOCKER_CONFIG/cli-plugins/
Jika ada tetapi tidak berfungsi, tambahkan direktori tersebut ke PATH Anda di ~/.bashrc atau ~/.zshrc:
export PATH=$PATH:$HOME/.docker/cli-plugins
Lalu muat ulang shell Anda dengan menjalankan ini:
source ~/.bashrc
Jika Anda telah menggunakan Docker cukup lama, Anda mungkin pernah melihat docker-compose dan docker compose di artikel dan video online. Keduanya tidak sama.
Docker Compose v1 adalah binary Python mandiri yang dipasang terpisah dari Docker. Ia menggunakan perintah docker-compose (dengan tanda hubung). Docker men-deprecate-nya pada 2023, dan tidak lagi dipelihara atau diperbarui.
Docker Compose v2 adalah plugin CLI berbasis Go yang dibangun langsung ke dalam Docker CLI. Anda memanggilnya dengan docker compose (tanpa tanda hubung). Ini hadir bersama Docker Engine dan Docker Desktop, jadi tidak ada tambahan yang perlu diinstal pada setelan modern.
Sintaks perintah hampir identik antara kedua versi - sebagian besar perintah docker-compose bekerja sama dengan docker compose. Perbedaan utama ada di balik layar: v2 lebih cepat, lebih terintegrasi dengan tooling Docker, dan aktif dipelihara.
Berikut perbandingannya:

Tabel perbandingan Compose v1 dan v2
Pada 2026, tetap gunakan v2. Jika skrip atau pipeline CI Anda masih menggunakan docker-compose, ganti tanda hubung dengan spasi - itu saja perubahan yang Anda perlukan untuk sebagian besar alur kerja.
Jika Anda menggunakan instalasi Docker modern, Anda sudah memiliki Compose v2. Tidak ada langkah tambahan yang diperlukan. Di macOS dan Windows, aplikasi Docker Desktop sudah menyertakan Compose. Jika Anda menggunakan Linux, ini ditangani oleh paket docker-compose-plugin.
Sebelum mulai menulis atau menjalankan berkas Compose, jalankan docker compose version untuk memastikan semuanya siap.
Jika Anda masih menjalankan Compose v1, sekarang saatnya beralih. Hilangkan tanda hubung dan hapus binary lama - itu saja. Semua berkas Compose Anda saat ini akan berfungsi apa adanya dengan v2.
Mencari lebih banyak sumber belajar Docker? Daftar di Introduction to Docker untuk mempelajari container, image, dan lainnya.
Docker Compose memungkinkan Anda mendefinisikan dan menjalankan aplikasi multi-container dari satu berkas YAML. Alih-alih memulai setiap container secara manual dengan perintah docker run terpisah, Anda mendeskripsikan seluruh setelan dalam satu berkas docker-compose.yml dan menyalakannya sekaligus dengan docker compose up.
Ya. Docker Compose adalah plugin yang berjalan di atas Docker Engine - tidak akan berfungsi tanpa Docker. Jalankan docker --version untuk memastikan Docker terpasang sebelum mencoba langkah instalasi Compose apa pun.
Docker Compose sendiri bersifat open source dan gratis. Docker Desktop, yang membundel Compose di macOS dan Windows, juga gratis untuk penggunaan pribadi dan tim kecil. Organisasi yang lebih besar mungkin memerlukan langganan Docker berbayar bergantung pada kasus penggunaannya.
docker compose (tanpa tanda hubung) adalah plugin CLI v2 yang dibundel dengan instalasi Docker modern. docker-compose (dengan tanda hubung) adalah binary mandiri v1 warisan yang di-deprecate oleh Docker pada 2023. Sintaksnya hampir identik, tetapi v1 tidak lagi dipelihara - gunakan v2 ke depannya.
Ini biasanya berarti plugin Compose tidak dipasang dengan benar, atau direktori plugin CLI tidak ada di PATH Anda. Di Linux, pastikan plugin terpasang dengan sudo apt-get install docker-compose-plugin. Jika sudah terpasang tetapi tetap tidak ditemukan, periksa bahwa $DOCKER_CONFIG/cli-plugins ada di PATH Anda dan muat ulang konfigurasi shell.
Belajar Docker bersama DataCamp
Kursus
Kursus
Kursus
blogs
David Woods
13 mnt
blogs
Dario Radečić
15 mnt
blogs
Hugo Bowne-Anderson
13 mnt

blogs
Javier Canales Luna
14 mnt