Cara Membuat Container Image Dengan Dockerfile
Jul 30, 2019 · 3 min read
Jika
anda belum memahami apa itu docker, bagaimana cara menginstallnya dan
bagaimana cara menjalankannya, anda dapat membacanya di tulisan yang
berjudul apa itu docker ?
Pada artikel kali ini saya akan membahas mengenai bagaimana cara membuat container image dengan Dockerfile.
Introduction
Jika
anda pernah membuat server untuk sebuah website berbasis html atau php,
mungkin anda akan melakukan instalasi web server (contoh: nginx) di
server dan kemudian memasukan file website anda di directory
/var/www/html
. Saat ini anda akan migrasi ke container. Lalu bagaimana caranya
membuat supaya container image anda berisi semua file website anda yang
ada di directory /var/www/html
tersebut? Caranya adalah dengan membuat custom image sendiri menggunakan Dockerfile.
Jika sudah terbentuk image, image tersebut bisa anda upload di docker
hub untuk kemudian bisa digunakan dimana saja dan ketika anda
menjalankan image tersebut, aplikasi anda akan berjalan dan bisa
digunakan.
Apa itu Dockerfile ?
Dockerfile
adalah sebuah file yang digunakan untuk membuat container image. Lalu
bagaimana caranya membuat custom image dengan Dockerfile ? Ikuti
langkah-langkah yang akan kita bahas dibawah.
Apa itu Docker Hub ?
Docker
Hub merupakan registry tempat penyimpanan docker image. Setelah anda
membuat custom image dengan nama yang anda inginkan, selanjutnya adalah
anda bisa push image tersebut ke registry, salah satunya Docker Hub.
Selanjutnya jika anda ingin menggunakan image tersebut, anda hanya perlu
pull image tersebut ke server dari Docker Hub.
Requirement
- MacOS or Linux
- docker installed
- port open 80
Tutorial
Langkah-1: Pastikan server atau komputer anda sudah terinstall docker. Untuk mengeceknya bisa ketikan perintah
docker -v
$sudo docker -v
Docker version 18.09.7, build 2d0083d
Langkah-2: Buat folder dengan nama
sample
dengan$mkdir sample
Langkah-3: masuk ke folder
sample
$cd sample
Langkah-4: buat file dengan nama
Dockerfile
dan isikan dengan code berikut:#image baseFROM nginx:alpine#copy aplication fileCOPY html /usr/share/nginx/htmlLangkah-5:
Langkah-5: Buat folder
html
$mkdir html
Langkah-6: masuk ke folder
html
dan buat file index.html
, isikan dengan kode html berikut:<!DOCTYPE html><html><body><h1>Hello World</h1></body></html>
Langkah-7: masuk ke directory dimana file
Dockerfile
berada, kemudian ketikan perintah berikut untuk build
image$sudo docker build -t aplication:versi-1 .
Langkah-8: Cek image yang telah terbentuk dengan perintah
$sudo docker images
dan akan muncul seperti berikut:$sudo docker images
output
REPOSITORY TAG IMAGE ID CREATED SIZEaplication versi-1 b5132100360e About a minute ago 21.1MB
Langkah-9: Jalankan image yang sudah anda buat dengan perintah berikut
$sudo docker run -d -p 80:80 aplication:versi-1
Langkah-10: Lihat container yang berjalan
$sudo docker ps
output
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESf7ecdffdc1fe aplication:versi-1 "nginx -g 'daemon of…" 4 seconds ago Up 3 seconds 0.0.0.0:80->80/tcp ecstatic_antonelli
Langkah-11: Uji coba akses localhost port 80, jika berhasil akan tampil aplikasi yang anda buat pada
langkah-6
.$curl -XGET localhost
output
<!DOCTYPE html><html><body><h1>Hello World</h1></body></html>
Jika anda mengakses dari browser, maka aplikasi yang anda buat seperti di langkah-6 akan muncul seperti gambar dibawah ini.
Langkah-12: Selesai
Tidak ada komentar:
Posting Komentar