Docker Compose adalah alat yang memungkinkan Anda untuk mendefinisikan dan mengelola aplikasi Docker multi-container. Docker Compose menggunakan file YAML untuk mengonfigurasi layanan, jaringan, dan volume aplikasi.

Compose dapat digunakan untuk berbagai tujuan. Deploy aplikasi host tunggal, pengujian otomatis, dan pengembangan lokal adalah kasus penggunaan paling populer untuk Docker Compose.

Compose biasanya digunakan untuk pengembangan lokal, penerapan aplikasi host tunggal, dan pengujian otomatis.

Artikel ini menjelaskan cara menginstal versi terbaru Docker Compose di Ubuntu 20.04. Kami juga akan menjelajahi konsep dan perintah Docker Compose dasar.

Prasyarat

Kami berasumsi bahwa Anda telah menginstal Docker di mesin Ubuntu Anda.

Install Docker Compose di Ubuntu

Docker Compose adalah file biner tunggal. Instalasi sangat mudah. Kami akan mendownload file ke direktori yang ada di sistem PATH dan membuatnya dapat dieksekusi.

Paket Docker Compose tersedia di repositori resmi Ubuntu 20.04, tetapi mungkin tidak selalu versi terbaru.

Pada saat artikel ini ditulis, versi stabil terbaru dari Docker Compose adalah 2.12.2. Sebelum mendownload binary Compose, kunjungi halaman rilis repositori Compose di GitHub dan periksa apakah ada versi baru yang tersedia untuk didownload.

Gunakan perintah curl untuk mendownload file Compose ke dalam direktori/usr/local/bin :

sudo curl -L "https://github.com/docker/compose/releases/download/v2.12.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Setelah download selesai, terapkan izin yang dapat dijalankan ke file:

sudo chmod +x /usr/local/bin/docker-compose

Untuk memverifikasi bahwa instalasi berhasil, jalankan perintah berikut yang akan mencetak versi Compose:

docker-compose --version

Outputnya akan terlihat seperti ini:

docker-compose version 2.15.2, build b02f1306

Pada poin ini, Docker Compose telah diinstal pada mesin Ubuntu Anda, dan Anda dapat mulai menggunakannya.

Memulai dengan Docker Compose

Di bagian ini, kami akan menggunakan Docker Compose untuk membangun aplikasi WordPress multi-container

Langkah pertama adalah membuat direktori proyek:

mkdir my_app
cd my_app

Buka editor teks Anda dan buat file bernama docker-compose.yml di dalam direktori project

nano docker-compose.yml

Paste konten berikut:

version: '3'

services:
  db:
    image: mysql:5.7
    restart: always
    volumes:
      - db_data:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: wordpress

  wordpress:
    image: wordpress
    restart: always
    volumes:
      - ./wp_data:/var/www/html
    ports:
      - "8080:80"
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_NAME: wordpress
      WORDPRESS_DB_USER: root
      WORDPRESS_DB_PASSWORD: password
    depends_on:
       - db

volumes:
    db_data:
    wp_data:

Mari menganalisis struktur file docker-compose.yml .

Baris pertama file menentukan versi file Compose . Ada beberapa versi format file Compose yang berbeda dengan dukungan untuk rilis Docker tertentu.

Selanjutnya, Anda menentukan services, volume, dan jaringan.

Dalam contoh ini, kami memiliki services, db, dan wordpress. Setiap layanan menjalankan satu image, dan membuat container terpisah saat docker-compose dijalankan.

Services dapat menggunakan images yang tersedia di DockerHub atau images yang dibuat dari Dockerfile. Bagian service juga mencakup kunci yang menentukan port terbuka, volume, environment variables, dependencies, dan perintah Docker lainnya

Dari direktori proyek, jalankan aplikasi WordPress dengan menjalankan perintah berikut:

docker-compose up

Compose akan melakukan pull images, memulai containers, dan membuat direktori wp_data.

Masukkan http://0.0.0.0:8080/ di browser, dan Anda akan melihat layar instalasi WordPress. Pada titik ini, aplikasi WordPress aktif dan berjalan dan Anda dapat mulai mengerjakan tema atau plugin.

Untuk menghentikan Compose , tekan CTRL+C.

Anda juga dapat memulai Compose dalam mode terpisah dengan opsi -d :

docker-compose up -d

Untuk memeriksa layanan yang berjalan, gunakan opsi ps:

docker-compose ps
       Name                     Command               State          Ports        
----------------------------------------------------------------------------------
my_app_db_1          docker-entrypoint.sh mysqld      Up      3306/tcp, 33060/tcp 
my_app_wordpress_1   docker-entrypoint.sh apach ...   Up      0.0.0.0:8080->80/tcp

Saat Compose berjalan dalam mode terpisah untuk menghentikan layanan, jalankan:

docker-compose stop

Untuk menghentikan dan menghapus penampung dan jaringan aplikasi, gunakan opsi down :

docker-compose down

Menghapus Instalasi Docker Compose

Untuk mencopot pemasangan Docker Compose, cukup hapus biner dengan mengetik:

sudo rm /usr/local/bin/docker-compose

Kesimpulan

Kami telah menunjukkan kepada Anda cara menginstal Docker Compose di Ubuntu 20.04. Menggunakan Docker Compose dapat meningkatkan alur kerja dan produktivitas Anda secara signifikan. Anda dapat menentukan lingkungan pengembangan dengan Docker Compose dan membagikannya dengan kolaborator proyek.