aggirih021

Deploy Web Sederhana Menggunakan Docker dengan opsi -v Volume

22 Desember 2019


Deploy Web Sederhana


Hari ini aku mengulang kembali materi tentang docker. 

Aku tulis supaya aku bisa inget. Sesederhana itu motivasinya. Untuk kali ini aku akan deploy web berisi profil, portfolioku, berbasis image httpd di Dockerhub. Skenarionya adalah:


1. Syaratnya, punya akun di AWS, kemudian deploy EC2 berbasis ubuntu. Lakukan remote melalui ssh.


2. EC2 diberi nama Giri_DevOps.



3. Didalam EC2 install Docker, Docker compose,Git. Lihat gambar diatas. Silakan cari cara install Docker dan Docker Compose di github. Selain itu kita juga harus punya akun di github.
4. Langkah selanjutnya adalah melakukan pull httpd dari dockerhub: >>> docker pull httpd . Jika sudah selesai pull maka akan terlihat images ada di lokal kita. >>> docker image tag httpd:latest giri021-httpd (untuk melakukan tagging image dilokal).


5. Langkah berikutnya adalah git clone repository di github:
Repository ini isinya adalah web sederhana tanpa database. >> git clone https://github.com/giri021/portfolioku.git


Maka akan ada folder baru dengan nama portfolioku. Silakan cd ke portfolioku.

6. Sekarang kita inspect image httpd dan kita peroleh working direktori nya. 
ubuntu@ip-10–21–4–xx:~$ docker image inspect giri021-httpd 
Akan kita temukan “WorkingDir”: “/usr/local/apache2”, ini nanti akan kita mount dengan isi dari folder /home/ubuntu/portfolioku.


Isi dari /home/ubuntu/portfolioku akan identik dengan /usr/local/apache2/htdocs
File index.html ada di /usr/local/apache2/htdocs <<<<


7. Langkah selanjutnya adalah menjalankan image giri021-httpd didalam container.
ubuntu@ip-10–21–4–xx:~/portfolioku$ docker run -it -d — name giri-testing -v 
$PWD:/usr/local/apache2/htdocs -p 0:80 giri021-httpd


*Catatan: -p 0:80 dapat dipahami seperti ini, -p (publish) adalah untuk menentukan port berapa yang akan digunakan/dibuka. Dengan menggunakan angka 0 adalah maka port host yang digunakan akan random. Semua traffic ke random host akan diarahkan ke port 80 di container giri021-httpd.
8. Untuk memastikan bahwa isi dari /usr/local/apache2/htdocs == /home/ubuntu/portfolioku . Mari kita cek:

9. Untuk melihat hasil dari deploy web dengan basis image tadi yang kita jalankan didalam container. http://54.70.17.154:32771/



10. Akan semakin ciamik jika kita menggunakan layanan AWS yaitu route53 untuk menggunakan domain yang kita punya. Aplikasi berbasis web ini hanya bersifat sementara. Karena habis ini aku delete container yang berjalan. Uji testing saja.
Agustinus Giri Hartono
#My name is Giri #Agustinus Giri Hartono. #Home is where the heart is #DevOps Enthusiast

Komentar