Melanjutkan bagian dua. Sillahkan membaca bagian 1 disini. Ini sepertinya jadi tulisan yang makin ngelantur.
Docker Compose
Docker Compose adalah tool yang akan membaca sekumpulan konfigurasi untuk dapat menjalankan satu atau lebih container dengan lebih mudah. Dalam konfigurasinya juga meliputi proses docker build dan docker run. Pada opsi build, compose akan menjalankan build dengan memanggil file Dockefile yang tersedia. Untuk opsi alamat image, compose akan mengunduh docker images sesuai alamat yang disediakan. Bisa dari docker hub atau juga dari private registry yang membutuhkan krendensial.
Install compose:
Docker compose membutuhkan beberapa pustaka python untuk menjalankannya. Untuk memasang di openSUSE Leap 15.1 cukup menjalankan ini di konsole
sudo zypper in docker-compose
Untuk menjalankan docker-compose, dibuatlah sebuah file dengan format yml standar dengan nama file docker-compose.yml. Didalamnya berisi konfigurasi manual.
Contoh konfigurasi bisa melihat contoh berikut
tree
.
├── docker-compose.yml
├── Dockerfile
└── index.html
0 directories, 3 files
Isi docker-compose adalah sebagai berikut:
version: '3'
services:
## Using image from docker hub
hello:
image: tuanpembual/hello
hostname: hello
container_name: hello
ports:
- "80:8080"
## Using image from local
hellov2:
build: .
hostname: hellov2
container_name: hellov2
ports:
- "80:8081"
Menjalankan Compose
docker-compose up
Perintah diatas dapat dijalankan jika file konfigurasi menggunakan nama standar semisal docker-compose.yml. Namun jika nama file berbeda, butuh mengatur path file seperti berikut:
docker-compose -f p-website-docker-compose.yml
Opsi docker-compose
docker-compose start
docker-compose up
docker-compose ps -a
docker-compose stop
docker-compose down
Ada banyak model penggunaan docker-compose. Model yang saya tulis adalah perintah yg saya gunakan sehar-hari.
Docker Swarm
Swarm adalah tool yang dapat membantu manajemen docker pada multiple host. Bahasa lainnya adalah orkestrasi (orchestration). Swarm sendiri merupakan tools native dari Docker. Tentang swarm sendiri dapat ditemukan di wiki docker dan swarm.
Saya sempat beberapa minggu ngulik swarm, mencoba membuat cluster sederhana. Mencoba untuk mengimplementasikan di AWS, namun setelah mencoba beberapa kali, solusi ini belum mampu menjawab kebutuhan tim di Binar Academy.
Bahan riset selanjutnya adalah bagian tiga, mencoba kubernetes atau k8s.
Estu~