![]() |
| Logo Docker |
Secara default container pada Docker tidak akan menyimpan segala sesuatu software yang kalian install dalam suatu Operasi Sistem didalam container, jadi saat kalian membuat suatu container dengan OS Ubuntu dan kalian mengkonfigurasi dengan menginstall beberapa software, lalu kalian merestart container tersebut atau service docker mati dan kalian menghidupkannya kembali, apapun yang sudah di konfigurasi atau diinstall software akan terhapus.
LALU BAGAIMANA AGAR SOFTWARE TERSEBUT TIDAK TERHAPUS?
Kalian dapat menggunakan Dockerfile dengan memasukan script dan perintah untuk menginstall suatu software yang nantinya akan menjadi sebuah image.
Contoh :
suhada@coretan:~$ cat Dockerfile
FROM ubuntu:16.04
RUN apt-get update
RUN apt-get install nano -y
RUN apt-get install apache2 -y
CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
EXPOSE 80
suhada@coretan:~$ docker build -t namaimage .
Sending build context to Docker daemon 2.048 kB
Step 1/7 : FROM ubuntu:16.04
---> b9e15a5d1e1a
Step 2/7 : RUN apt-get update
---> Using cache
---> d544fad27afd
Step 3/7 : RUN apt-get upgrade -y
---> Using cache
---> f9f4733462f9
Step 4/7 : RUN apt-get install nano -y
---> Using cache
---> e66ca8893ae4
Step 5/7 : RUN apt-get install apache2 -y
---> Using cache
---> f9a37df8f18e
Step 6/7 : CMD /usr/sbin/apache2ctl -D FOREGROUND
---> Running in c9ad40c28571
---> 754d28b5b8ca
Removing intermediate container c9ad40c28571
Step 7/7 : EXPOSE 80
---> Running in c1aeb80d7fce
---> 3fcdfc6700d8
Removing intermediate container c1aeb80d7fce
Successfully built 3fcdfc6700d8
Setelah dibuild lalu kalian membuat suatu container dengan menggunakan image tersebut.
suhada@coretan:~$ docker run -dit --name namacontainer -p 81:80 namaimage
381a8466b55b98146aa1b5ddxxxxxxxxxxf8b352a24cf50a44031129c889b62
Container sudah berjalan, bukalah pada browser anda dengan alamat http://localhost:81/ jika software apache2 berjalan silahkan kalian merestart container atau service Docker, dan software apache2 tersebut masih tetap berjalan.
Dengan kalian menggunakan Dockerfile untuk membuat suatu image, kalian tidak perlu cape cape masuk kedalam container untuk menginstall suatu software dan disaat container ke restart dengan sendirinya atau service docker mati, kalian tidak perlu menginstall lagi software tersebut.
Tambahan :
Kalian dapat mempelajari script pada Dockerfile di => https://medium.com/ade-sadikin/mengenal-docker-bagian-2-dockerfile-ddb65f6573c4

