Cara Install dan Menggunakan Docker Compose di Ubuntu 18.04

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.

Dalam tutorial ini, kami akan menunjukkan kepada Anda bagaimana menginstal versi terbaru dari Docker Compose di Ubuntu 18.04 dan menjelajahi konsep dasar Docker Compose dan perintah dasar

Instruksi yang sama berlaku untuk Ubuntu 16.04 dan distribusi berbasis Debian lainnya, termasuk Debian, Linux Mint, dan Elementary OS.

*Prasyarat*

Pastikan Anda telah memenuhi prasyarat berikut sebelum melanjutkan dengan tutorial ini:

· Masuk sebagai user dengan hak istimewa sudo. · Docker terinstal mengikuti instruksi dari Cara Install dan Konfigurasi Docker di Ubuntu 18.04.

*Instal Docker Compose di Ubuntu*

Paket instalasi Docker Compose tersedia di repositori resmi Ubuntu 18.04 tetapi mungkin tidak selalu merupakan versi terbaru. Pendekatan yang disarankan adalah menginstal Docker Compose dari repositori Dockit GitHub.

Pada saat penulisan artikel ini, versi stabil Docker Compose terbaru adalah versi 1.23.1. Sebelum download binary Compose, kunjungi halaman rilis repositori Compose di GitHub dan periksa apakah ada versi baru yang tersedia untuk diunduh.

Untuk menginstal Docker Compose di Ubuntu 18.04, ikuti langkah-langkah berikut :

1. Docker Compose binary ke direktori /usr/local/bin dengan perintah curl berikut:

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

2. Setelah unduhan selesai, terapkan izin agar file dapat dieksekusi ke binary :

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

3. Verifikasi instalasi dengan menjalankan perintah berikut yang akan menampilkan versi Compose”  :

docker-compose –version

Outputnya akan terlihat seperti ini :

docker-compose version 1.23.1, build b02f1306

*Memulai dengan Docker Compose*

Pada bagian ini, kami akan menunjukkan cara menggunakan Docker Compose untuk mengatur WordPress multi-container pada Ubuntu 18.04.

Mulailah dengan membuat direktori project dan menavigasi ke dalamnya:

mkdir my_app cd my_app

Jalankan” teks editor” dan buat file bernama docker-compose.yml di dalam direktori my_app:

nano docker-compose.yml

Paste konten berikut ini ke dalam docker-compose.yml:

version: ‘3.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:

-Analisis kode baris demi baris.-

Di baris pertama, kita”  menentukan versi Compose. Ada beberapa versi berbeda dari format file Compose dengan dukungan untuk rilis Docker tertentu.

Selanjutnya, kita mendefinisikan dua layanan, db dan wordpress. Setiap layanan menjalankan satu image dan akan membuat container yang terpisah ketika docker-compose dijalankan.

The” db” service:

Layanan db” :

· Menggunakan image mysql:5.7. Jika image tidak ada di sistem, maka akan “/pull/” atau ditarik dari repositori publik Docker Hub. · Menggunakan kebijakan restart always yang akan memerintahkan container untuk selalu restart. · Membuat volume bernama db_data untuk membuat database menjadi persisten. · Menentukan environment variables untuk image mysql: 5.7.

Layanan wordpress:

· Menggunakan image wordpress. Jika image tidak ada di sistem Anda Compose akan menariknya dari repositori publik Docker Hub. · Menggunakan kebijakan restart always yang akan memerintahkan container untuk selalu restart. · Mount direktori wp_data pada host ke /var/lib/mysql di dalam container. · Meneruskan port 80 yang terbuka pada container ke port 8080 pada mesin host. · Menentukan environment variables untuk image wordpress. · Instruksi depend_on menentukan ketergantungan antara kedua layanan. Dalam contoh ini, db akan dimulai sebelum wordpress.

Dari direktori project, mulai aplikasi WordPress dengan menjalankan perintah berikut:

docker-compose up

Outputnya akan terlihat seperti ini:

… wordpress_1 | [Sun Sep 22 22:31:43.488055 2018] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.25 (Debian) PHP/7.2.10 configured — resuming normal operations wordpress_1 | [Sun Sep 22 22:31:43.488796 2018] [core:notice] [pid 1] AH00094: Command line: ‘apache2 -D FOREGROUND’

Tulis akan menarik kedua images, mulai dua container dan buat direktori wp_data di direktori proyek Anda.

Masukkan http://0.0.0.0:8080/ di browser dan Anda akan melihat layar instalasi WordPress.

Pada titik ini aplikasi WordPress sudah aktif dan berjalan dan Anda dapat mulai mengerjakan tema atau plugin Anda.

Untuk menghentikan Compose, tekan CTRL + C.

Anda juga dapat memulai Compose dalam mode terpisah dengan menggunakan flag -d.

docker-compose up -d

Untuk memeriksa layanan, gunakan opsi perintah 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

Ketika Compose berjalan dalam mode terpisah untuk menghentikan penggunaan layanan:

docker-compose stop

Jika Anda ingin menghapus container seluruhnya gunakan opsi down:

docker-compose down

Menggunakan flag –volumes juga akan menghapus volume data:

docker-compose down –volumes

*Menghapus Instalasi Docker Compose*

Jika karena alasan apa pun Anda ingin menghapus Docker Compose, Anda cukup menghapus binary Compose dengan mengetik:

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

*Kesimpulan*

Anda telah belajar cara menginstal dan menggunakan Docker Compose di Ubuntu 18.04.

Menggunakan Docker Compose dapat secara signifikan meningkatkan alur kerja dan produktivitas. Anda dapat menentukan lingkungan pengembangan dengan Docker Compose dan membaginya dengan kolaborator di proyek sama.

Leave a Reply

Your email address will not be published.