Build Justika Probono dengan Docker

Aldo Bima
PPL SeLaw
Published in
2 min readApr 30, 2019

Apa itu docker?

Docker adalah salah satu platform yang dibangun berdasarkan teknologi container. Docker merupakan sebuah project open-source yang menyediakan platform terbuka untuk developer maupun sysadmin untuk dapat membangun, mengemas, dan menjalankan aplikasi dimanapun sebagai sebuah wadah (container) yang ringan.

Mengapa Menggunakan Docker?

Salah satu masalah yang mungkin terjadi pada proses pengembangan perangkat lunak adalah sistem operasi yang berbeda salam menjalankan aplikasi. Sistem operasi yang berbeda-beda memiliki behaviour yang berbeda pula sehingga bisa saja aplikasi perangkat lunak akan berjalan secara berbeda pada sisttem operasi yang berbeda.

Salah satu manfaat terbesar Docker adalah portabilitas. Docker dapat menyelesaikan masalah tersebut dengan penerapan container. Dengan container codingan akan disimpan dalam bentuk image dan pada kontainer tersebut environtmentnya adalah linux.

Penerapan Docker pada Pengembangan Justika Probono

Tentunya saya dan tim ingin menerapkan docker untuk menyelesaikan masalah yang ada di atas. Nah bagaimana sih kami menerapkan docker pada pengembangan perangkat lunak kami?

potongan script pada file gitlab-ci.yml

Urutan proses build pada docker tertera pada file gitlab-ci.yml pada bagian stage ‘build stagig’ . Pada bagian ini dispesifikasi bahwa proses build hanya dapat dilakukan pada staging-be sehingga pada branch lain tidak akan dilakukan proses build. Berikut adalah tahapan-tahapan buildnya

Build

Dijalankan dengan script

docker build -t pplc4/backend .

Script ini akan menjalankan script yang ada pada docker file untuk membuat image dari source code. Kemudian iamge akan disimpan dengan nama pplc4/backeend.

Dockerfile

Pada file ini yang pertama dilakukan adalah set environtment. Kemudian dibuat sebuah direktori dengan nama /code dan diset menjadi working directory. Setelah itu copy file requirements.txt ke dalam direktori dan install semua requirementsnya. Setelah itu semua source code akandicopy ke dalam direktori /code. Setelah itu akan dijalankan makemigrations, migrate, dan collectstatic.

Tag

Dijalankan dengan script

docker tag pplc4/backend:latest registry.docker.ppl.cs.ui.ac.id/pplc4/backend

Pada script ini akan menset alamat dari registry docker yang nantinya akan digunakan untuk push container yang sudah dibuild pada fase sebelumnya. pada pengembangan ini digunakan alamat registry docker yang disediakan fakultas ilmu komputer UI.

Push

Dijalankan dengan script

docker push registry.docker.ppl.cs.ui.ac.id/pplc4/backend

Pada bagian ini container akan dipush ke registry docker yang tadi sudah dibuat

--

--