Browsing "Older Posts"

Langkah pertama adalah membuat docker file untuk membuat image aplikasi disini diberinama Dockerfile-app. Source codenya seperti dibawah

Perintah FROM adalah base image yang digunakan yaitu dari image phyton versi 3.5. Sedangkan WORKDIR adalah letak awal atau direktori kerja dari perintah cmd yang ada di mesin nanti ketika berhasil dibuat. Baris berikutnya adalah perintah COPY digunakan untuk menyalin directory source_code ke app. Lalu ada perintah RUN adalah perintah yang pertama kali dijalankan untuk membangun docker image. Dalam hal ini pip install adalah perintah dalam python digunakan untuk menginstall suatu package.


Dan inilah isi dari requirement.txt. Sehingga perintah tersebut akan menginstall flask dan pymysql.

Setelah itu membuat image untuk mysqlnya yang diberi nama Dockerfile-mysql. Source codenya seperti berikut



Sama seperti sebelumnya, perintah FORM digunakan untuk memanggil image base yaitu mysql versi 5.5 lalu ada ENV adalah environment variable yang nanti dibutuhkan, disitu kita mengatur untuk namadatabase, user, password dan Random root password. Lalu beris berikutnya adalah perintah COPY digunakan untuk menyalin directory database ke docker-entrypoint-initdb.d.

Langkah selanjutnya adalah membuat sebuah file Docker-compose.yaml. Source codenya seperti berikut



Terdapat version untuk menentukan versi dari compose yang digunakan, juga akan berpengaruh pada mesin yang digunakan oleh docker nantinya, disini kita memakai versi lama yaitu 2.
Setelah itu services digunakan untuk mengatur kebutuhan yang akan dijalankan nanti pada docker-compose. Terdapat dua container yang akan di buat bernama phonebook-mysql dan phonebook-app.

Dijalankan dengan perintah docker-compose up -d, tapi sebelum itu kita masuk sebagai root dahulu dengan sudo su(karena kita di linux mint).



Setelah muncul informasi done seperti diatas artinya docker-compose kita berhasil di up dan bisa di akses. Diakses dengan mengunjungi localhost:8181 maka seperti inilah tampilan dari aplikasi yang telah dibuat tadi.


Dan container yang aktif ada 2

Untuk container yang mysql-server-80 itu bukan menjadi satu dalam kasus ini. Jadi abaikan.

File dapat temen temen peroleh dari github dan terima kasih banyak untuk pembuatnya. muhammad Hanif

Sekian dan Terima Kasih.





CRUD Aplikasi Sederhana Dengan Flask dan Mysql di Docker Compose

By RiyanRIS → Selasa, 31 Desember 2019