MODUL DOCKER 1
PENDAHULUAN
Dalam dunia Information Technolgy (Teknologi Informasi) yang perkembangan tidak bisa
dibendung, semakin hari semakin banyak Technology yang bermunculan. Technolgy - technology
ini pengembangannya juga sangat cepat, jadi jika kita tidak mengikuti suatu technology yang
saat ini sedang populer, kita akan tertinggal dengan perkembangan yang tidak bisa kitabendung.
karenanya sangat penting untuk mengetahui technolgy - technology baru yang akan sangat
membantu kita sebagai seorang praktisi IT yang sedang kuliah atau bekerja dalam bidang
tersebut.
Perkembangan technology juga sudah masuk ke ranah virtual, seperti sekarang di masa
pandemi ini, sekolah - sekolah memanfaatkan technology dengan mengadakan kelas virtual,
dan perkantoran mengadakan meeting virtual, sosialisasi virtual. dan masih banyak lagi. karena
cepatnya perkembangan technology-lah yang membuat semua serentak menerapkan virualisasi
dengan sangat cepat dan sangat membantu sekolah atau instansi - instansi yang
menerapkannya.
Virutaliasi juga yang akan kita bahas di modul kali ini, aplikasi yang biasa berjalan diserver-
server fisik, sekarang pun sudah dibungkus kedalam mesin virtual yang bisa lebih memangkas
biaya, lebih efisien, dan lebih mudah pemeliharaannya.
Berbicara tentang virtualisasi kita mungkin pernah menggunakan software (perangkat lunak)
VirtualBox, VirtualBox yang kita tahu bisa melakukan virtualisasi system operasi dengan sangat
mudah, selain VirtualBox ada juga beberapa sofware yang bisa mejalankan beberapa mesin
virtual bersamaan yang dikenal juga dengan teknik virtualisasi atau hypervisor,
Nah, dimodul ini kita akan belajar bersama - sama tentang docker, karena sangat penting untuk
dipelajari dimasa sekarang ini yang kebanyakan Perusahan - perusahaan besar di bidang IT dan
Cloud Provider yang besar seperti AWS, GCP, Microsoft Azure dan lain - lain hampir semua
sudah menggunakan docker.
MODUL DOCKER 2
GLOSARIUM
▸ Credentials - hal yang berhubungan dengan akun beserta passwod atau hal - hal yang
bersifat sensitif.
▸ Environment - adalah suatu ruang lingkup pengembangan. seperti server production (server
produksi atau server utama) server development (server pengembangan) server staging
(server campuran antara server produksi dan pengembangan) anda bisa menguji aplikasi
seolah - olah berada dalam server produksi.
▸ Server - Perangkat keras atau mesin virtual yang menyediakan sumber daya yang
▸ Hypervisor - adalah salah satu teknik dari virtualisasi yang bisa menjalankan beberapa
▸ WSL - Windows Subsytem for Linux - adalah fitur windows untuk menciptakan
lingkungan yang ringan dan memungkinkan anda untuk menjalankan dan memasang
distribusi linux di windows.
PENGENALAN DOCKER
Docker adalah aplikasi untuk menyatukan berbagai file software dan pendukungnya dalam
sebuah wadah (container) agar memudahkan proses pengembangan software.
Nah, mengapa Anda perlu menggunakan container seperti yang ditawarkan Docker? Dalam
pengembangan aplikasi, developer memerlukan virtualisasi di server agar aplikasi bisa berjalan
di berbagai platform dengan konfigurasi hardware yang berbeda-beda.
Sayangnya, ketika menggunakan virtualisasi, Anda harus menyiapkan satu sistem operasi
secara penuh. Jika membutuhkan beberapa virtualisasi, server perlu resource yang besar.
Nah, container bisa digunakan sebagai alternatif virtualisasi sehingga tidak perlu menyiapkan
sistem operasi secara penuh. Dengan container, ukuran file menjadi lebih kecil dibandingkan
virtualisasi yang biasa digunakan.
MODUL DOCKER 3
FUNGSI DOCKER
Lalu, apa saja fungsi Docker yang akan memberikan manfaat pada pengembangan aplikasi?
Berikut adalah enam di antaranya:
▸ Mempermudah Pengembangan Aplikasi
▸ Menyederhanakan Konfigurasi
Docker tidak memiliki overhead sehingga developer bisa menjalankan aplikasi yang diuji
tanpa konfigurasi tambahan.
Developer bisa memanfaatkan Docker container sebagai tempat pengujian kode Pipeline
beserta tools yang diperlukan dengan lebih mudah.
Adanya fitur debug bisa membantu developer untuk mengatasi masalah pada aplikasi tanpa
perlu bersusah payah meninggalkan environment di Docker.
▸ Mendukung Multitenancy
Docker cocok digunakan untuk membuat aplikasi berstruktur multitenance seperti Software
as a Service (SaaS). Anda bisa membuat lebih dari satu environment yang terisolasi dan
menjalankan objek aplikasi untuk setiap tenant.
Dengan Docker, peningkatan sumber daya perangkat dapat dilakukan dengan cepat sehingga
durasi pengembangan software lebih singkat.
MENGAPA DOCKER?
Mari kita uraikan bagaimana langkah-langkah dasar untuk mem-publish atau men-deploy
(meluncurkan) aplikasi di production, staging, development server sebelum adanya docker:
3. ssh kedalam server atau menggunakan ftp client seperti filezilla untuk memindahkan file-file
aplikasi tersebut.
MODUL DOCKER 4
mungkin sekilas langkah - langkah diatas sudah memenuhi kubutuhan kita dalam men-deploy
aplikasi pada server. tapi nyatanya ada masalah - masalah lain yang biasanya muncul pada saat
proses deploy maupun saat aplikasi sudah berjalan, mari kita uraikan kembali :
2. Versi web server tidak sama dengan web server yg digunakan client.
3. Versi dependencies yang digunakan client berbeda dengan versi yang terinstall di server.
Berbasis dari masalah - masalah tersebut diciptakankah suatu technology baru yang bisa mem-
bundle/membugkus OS dan semua dependesies yang dibutuhkan aplikasi kedalam satu
container yang disebut dengan teknik application containerized/aplikasi didalam kontener yang
sekarang sangat populer yaitu docker.
INSTALL DOCKER
Setelah mengenal docker beserta fungsi docker serta mengetahui kegunaan docker, sudah
saatnya mengetaui docker lebih dalam, langkah awal yaitu menginstall docker di lokal PC
(Personal Computer) kita.
▸ Langkah pertama kita harus mengaktifkan wsl pada windows sebagai docker backend. cari
MODUL DOCKER 5
▸ Buka, dan pastikan Windows Subsytem for Linux dan Virtual Machine Platform tercentang,
▸ Setelah itu download linux kernel update package dan install WSL2 Linux kernel update package
▸ Jika hasilnya seperti berikut, artinya anda menggunakn x64 based, silahkan mendownload
package x64based.
▸ Setelah itu buka windows terminal, jika belum terinstall silahkan install dahulu windows terminal
dariMicrosoft Store , setelah itu ketikan perintah berikut untuk mengeset default wsl ke versi 2
1 wsl --set-default-version 2
MODUL DOCKER 6
▸ Setelah tu install Distribution Ubuntu-20.04 melalui wsl dengan perintah:
▸ Setelah terinstall anda akan diminta membuat akun user anda, dengan membuat username dan
password.
(https://desktop.docker.com/win/main/amd64/Docker%20Desktop%20Installer.exe) . Jika
muncul pop-up seperti ini,silahkancentang Install required…WSL 2 dan Add shortcut to
desktop. dan tekan Ok.
▸ Setelah selesai terinstall anda akan diminta untuk merestart PC anda, silahkan restart PC anda
terlebihdahulu.
▸ Setelah selesai restart, akan muncul pop up seperti dibawah ini. centang i accept the
MODUL DOCKER 7
▸ Setelah itu tunggu hingga Docker Engine berjalan. Setelah itu akan muncul pesan seperti ini, tekan
tombol Skip tutorial. karena we're doing the hard way (kita melalukan cara yang susah) .
▸ Setelah kita akan masuk ke Distribution Ubuntu-20.04 yang tadi sudah kita install. buka kembali
1 wsl -d Ubuntu-20.04
Sebenarnya perintah docker sudah tersedia juga di terminal windows, hanya saja lebih baik kita
menggunakanshell linux. karena perintah - perintah didalam modul ini mengandung perintah -
perintah shell linux. selajutnyakita akan terus menggunakan Distribution Ubuntu untuk
mengeksekusi perintah Docker, tapi kalo anda lebih suka menggunakan windows terminal, maka
tidak menjadi masalah. anda tetap bisa mengikuti modul ini dengan baik.
Langkah awal untuk memastikan docker berjalan dengan baik, ketikan perintah berikut:
MODUL DOCKER 8
Jika outputnya sama seperti diatas dan juga pada Docker-Desktop muncul 1 container hello-
world, makadocker sudah success terinstall dengan baik di PC Windows anda.
Pada Docker-Desktop juga sudah tersedia management docker image, container, dan lain - lain,
tapi kita akan tetap melakukan perintah - perintah docker menggunakan terminal, seperti
sebelumnnya, we're doing the hardway. karena tidak menutup kemungkinan kita akan tetap
menggunakan terminal di server atau kita terpaksa menggunakan terminal, karena kita sudah
terbiasa menggunakan terminal untuk menjalankan perintah - perintah docker. maka kita tidak
perlu bingung lagi untuk mengelola docker nantinya.
Untuk penginstallan di OS linux, dimodul ini kita akan menginstall docker di Distribution Ubuntu,
atausetidaknya Debian based.
3 ca-certificates \
4 curl \
5 gnupg \
6 lsb-release
1 echo \
▸ Setelah itu ketikan perintah berikut untuk memastikan docker sudah terinstall dengan baik
Jika outputnya seperti gambar diatas, maka docker sudah terinstall dengan baik. Terakhir kita
akan menginstall docker-compose, kegunaannya nanti akan dijelaskan.
MODUL DOCKER 10
▸ Test docker compose dengan perintah :
1 docker-compose -v
Jika outputnya seperti gambar diatas maka docker-compose sudah terinstall dengan baik.
Dalam penggunaan Docker, inilah beberapa istilah yang perlu Anda pahami:
▸ Docker container — Wadah untuk mengemas dan menjalankan aplikasi. Wadah ini mencakup
kode, runtime, system tools, dan pengaturan. Container hanya bisa mengakses resource
yang telah ditentukan dalam Docker image.
▸ Docker client — Tempat di mana pengguna dapat mengirimkan perintah seperti Docker build,
▸ Docker Engine Rest API — Komponen yang digunakan untuk berinteraksi dengan Docker
▸ Docker daemon — Proses pengelolaan Docker images, container, network, dan storage
volumes. Docker daemon menerima request dari Docker API dan akan memprosesnya.
▸ Docker host — Komponen yang menyediakan lingkungan untuk menjalankan aplikasi. Docker
▸ Docker registry — Wadah untuk menyimpan Docker image. Docker image akan memberi
reaksi sesuai perintah yang diberikan. Misalnya, saat diberi perintah docker push, docker
image akan didorong atau dibagikan ke registry Docker Hub.
▸ Docker Hub — Layanan yang disediakan untuk menemukan dan berbagi Docker image.
MODUL DOCKER 11
DOCKER IMAGE
Docker image adalah blueprint Docker container yang berisi aplikasi dan semua yang Anda
butuhkan untuk menjalankan aplikasi. Container adalah contoh runtime instance dari suatu
image.
Untuk mengelola image docker kita bisa menggunakan perintah - perintah berikut ini:
1 docker images
1 docker image ls
▸ Download image
▸ Menghapus image
Masih banyak lagi perintah untuk docker image, perintah - perintah diatas adalah perintah -
perintah yang akan sering digunakan.
Latihan docker image, kita akan mencoba menjalankan perintah - perintah yang sudah kita
bahas diatas
▸ Mendownload docker image, image yang kita akan download adalah image nginx
MODUL DOCKER 12
▸ Melihat daftar docker image yang tersedia
1 docker images
Sebelum kita membuat docker image, kita harus berkenalan dlu dengan Dockerfile.
Dockerfile adalah file teks yang berisi semua perintah yang bisa dijalankan user pada baris
perintah untuk membuat image. Ini mencakup semua instruksi yang diperlukan oleh Docker
untuk membangun image.
Docker image terdiri dari serangkaian filesystem yang mewakili instruksi dalam Dockerfile image
dan membentuk aplikasi perangkat lunak yang dapat dieksekusi.
File Docker mengambil bentuk berikut:
1 # Comment
2 INSTRUCTION arguments
Meskipun instruksi tidak peka terhadap huruf case-sensitive, konvensi ini adalah untuk
menggunakan UPPERCASE untuk nama mereka.
Di bawah ini adalah daftar dengan deskripsi singkat tentang beberapa petunjuk Dockerfile yang
paling sering digunakan:
▸ ARG – Instruksi ini memungkinkan Anda untuk menentukan variabel yang dapat dilewati
▸ FROM – image dasar untuk membangun image baru. Instruksi ini harus menjadi instruksi
non-comment pertama di Dockerfile. Satu-satunya pengecualian dari aturan ini adalah ketika
Anda ingin menggunakan variabel dalam argumen FROM. Dalam hal ini FROM dapat
didahului dengan satu atau lebih instruksi ARG.
MODUL DOCKER 13
▸ LABEL – Digunakan untuk menambahkan metadata ke image, seperti deskripsi, versi, author
dll. Anda dapat menentukan lebih dari satu LABEL dan setiap instruksi LABEL adalah key-
value pair.
▸ RUN – Perintah yang ditentukan dalam instruksi ini akan dieksekusi selama proses build.
Setiap instruksi RUN membuat layer baru di atas image saat ini.
▸ ADD – Digunakan untuk menyalin file dan direktori dari sumber yang ditentukan ke
tujuan yang ditentukan pada image docker. Sumbernya dapat berupa file atau direktori
lokal atau URL. Jika sumbernya adalah arsiptar lokal , maka secara otomatis dibongkar ke
dalam imageDocker.
▸ COPY – Mirip dengan ADD tetapi sumbernya hanya berupa file atau direktori lokal.
▸ CMD – Digunakan untuk menentukan perintah yang akan dieksekusi ketika Anda
menjalankan sebuah container. Anda hanya dapat menggunakan satu instruksi CMD di
Dockerfile Anda.
▸ ENTRYPOINT – Mirip dengan CMD, instruksi ini mendefinisikan perintah apa yang akan
dieksekusi ketika menjalankan sebuah container.
▸ WORKDIR – Directive ini menetapkan direktori kerja saat ini untuk instruksi RUN, CMD,
▸ USER – Tetapkan nama user atau UID untuk digunakan ketika menjalankan instruksi RUN,
▸ EXPOSE – Digunakan untuk menentukan port tempat Container mendengarkan saat runtime.
Untuk mengecualikan file dan direktori agar tidak ditambahkan ke image, buat file
.dockerignore dalam direktori. Sintaks dari .dockerignore mirip dengan salah satu dari file
.gitignore Git.
Skenario yang paling umum untuk membuat image Docker adalah pull images yang sudah ada
dari registri seperti itu (biasanya dari Docker Hub) dan menentukan perubahan yang ingin Anda
lakukan pada images dasar tersebut.
Images dasar yang paling umum digunakan saat membuat image Docker adalah Alpine karena
berukuran kecil dan dioptimalkan untuk dijalankan dalam RAM.
MODUL DOCKER 14
Docker Hub adalah layanan registri berbasis cloud yang di antara fungsi lainnya digunakan
untuk menyimpan image Docker baik dalam repositori publik atau pribadi.
▸ Pertama, buat direktori yang akan berisi Dockerfile dan semua file yang diperlukan:
1 mkdir myimage
1 cd myimage
2 Touch Dockerfile
1 FROM nginx
3 LABEL maintainer="nama"
1 touch index.html
▸ silahkan mengisikan index.html sesuka hati atau bisa juga mengikuti syntax dibawah ini:
1 <h1>Pelatihan Docker</h1>
tag - tag html tidak lengkap. pada saat membuat image yang sebenarnya.
disarankan untuk membuat semua component Dockerfile dengan sebaik-baiknya.
bisa saja nanti image kita akan digunakan oleh rekan kerja atau bisa jadi kita akan
mempublish docker image kita secara umum.
MODUL DOCKER 15
▸ kelima, build image
Selamat kita sudah berhasil membuat docker image kita sendiri. selanjutnya bagaimana?
seteleh itu kita akan menjalankan image yang telah kita buat kedalam docker container, lebih
jelasnya akan dipaparkan di materi berikutnya tentang Docker Container.
Docker Container menjadi wadah bagi instance Docker image. Membuat dan menjalankan
Image menghasilkan Docker container. Image menyediakan template yang digunakan dalam
pembuatan container. Di dalam image, terdapat informasi yang dibutuhkan untuk membuat
container. Image bisa disimpan di komputer atau secara remote (Docker Registry).
Untuk cara membuat docker container kita bisa menuliskan perintah - perintah berikut:
▸ membuat container
MODUL DOCKER 16
Cara Mengelola Docker Container
1 docker ps
1 docker ps -a
1 docker stats
1 docker rm <nama-container-atau-id-container>
▸ Untuk membuat docker container dan menjalankan container dan menentukan nama
MODUL DOCKER 17
▸ Jika ingin melihat proses top dari container, gunakan command ini
▸ Untuk melihat status container, misalnya penggunaan CPU, penggunaan memori, dll.
1 docker stats
Kita akan menggunakan image yang sudah kita buat dan kita coba untuk menjalankan image
kita didalam Docker container.
▸ pertama - tama kita kan mengguanakan image default nginx untuk membandingkan dengan
coba akses melalui browser dengan mengetikan localhost:8080, jika tampil halaman nginx
berarti kita sudah berhasil menjalankan Docker container, bisa juga dengan mengetikan
docker ps di terminal untuk melihat apakah Docker container kita sudah berjalan
sekarang coba akses lagi melalui browser dengan mengetikan localhost:8081, jika web kita
tampil maka kita sudah berhasil membuat image kita sendiri dan menjalankannya di dalam
Docker container.
Selesai! Anda kini sudah bisa membuat Docker Container dan menggunakannya.
MODUL DOCKER 18
DOCKER IMAGE REGISTRY
Docker registry adalah penyimpanan untuk Docker Image anda. Setelah anda membuat Docker
Image, anda dapat mengupload ke registry publik seperti Docker Hub atau registri anda sendiri
yang berjalan di belakang firewall anda.
Menggunakan klien Docker, anda dapat mencari Image yang sudah diterbitkan dan kemudian
mendownload image ke Host Docker anda untuk membangun wadahnya.
Docker Hub menyediakan baik penyimpanan publik dan private untuk Image. Penyimpanan
publik dapat dicari dan dapat didownload oleh siapa saja. Penyimpanan pribadi dikecualikan dari
hasil pencarian dan hanya anda serta pengguna tertentu yang dapat mendownload dan
menggunakannya untuk membangun image atau container. Anda dapat mendaftar untuk paket
penyimpanan pada data center sesuai lokasi bisnis anda.
Untuk mempermudah pembelajaran docker diharapkan untuk membuat akun di Docker Hub.
https://hub.docker.com
Setelah selesai membuat akun di Docker Hub, kita juga harus login melalui terminal untuk bisa
mengupload image kita.
1 docker login
▸ Sebelum bisa push image, kita harus membuat tag image baru. kita harus menyertakan
MODUL DOCKER 19
▸ Mari kita terapkan perintah diatas untuk mengganti nama image kita
1 docker images
▸ Langkah selanjutnya, setelah kita pastikan image sudah dibuat. kita bisa mulai untuk push
DOCKER COMPOSE
Sambil mengigat materi sebelumnya, kita sudah belajar tentang Dockerfile, yaitu sebuah text
sederhana yang digunakan untuk membangun sebuah Docker Image.
Docker compose digunakan oleh user untuk mendefinisikan sebuah atau beberapa services yang
nantinya akan digunakan untuk membentuk sebuah aplikasi dalam kesatuan.
Services yang dimaksud ini bisa berupa service website (webserver) atau database ataupun
keduanya tergantung dengan kebutuhan dari user.
MODUL DOCKER 20
KEGUNAAN DOCKER COMPOSE
Setelah mengetahui perbedaan Dockerfile dengan Docker Compose sekarang kita perlu tahu
apa sih kegunaannya ?
Docker Compose digunakan user untuk mempercepat dan mempermudah pembuatan service
atau aplikasi pada sebuah container.
Berbeda dengan cara tradisional, yang biasanya user akan membuat satu persatu services
container dengan menggunakan Docker CLI, pada Docker Compose kebutuhan pembuatan
aplikasi akan dijadikan pada sebuat wadah text bernama docker-compose.yml, pada file ini
user bisa mendefinisikan service - service yang nantinya akan digunakan oleh aplikasi dan
ketika struktur service sudah selesai dibuat user bisa menjalankan servicenya hanya dengan 1
baris perintah : docker-compose up
Sampai disini apakah ada hal yang ingin ditanyakan ? silakan komentar dibawah ya sebelum kita
lanjut ke pembahasan selanjutnya.
▸ Pertama - tama kita akan membuat folder tempat kita membuat file docker compose.
1 mkdir mycontainer
1 touch docker-compose.yaml
▸ Setelah itu kita bisa menuliskan baris - baris struktur docker-compose yang didalamnya ada
1 version: "3.3"
2 services:
3 web:
4 image: deadlyug/myimage:1.0
5 ports:
6 - 8081:80
7 restart: always
MODUL DOCKER 21
!! yaml file sangat sensitif dengan spasi, pastikan spasinya persis sama seperti diatas.
1 docker-compose up
▸ Agar container kita bisa jdalan dilatar belakang, kita hars menambahkan option: -d
seperti ini:
1 docker-compose up -d
1 docker-compose down
Setelah kita mengnal docker compose kita tidak perlu lagi mengetikan perintah yang panjang
ketika aplikasi yang kita bangun sudah agak kompleks, seperti nantinya kita menambahkan
service databse, menambahkan service php, dan sebagainya. cukup dengan perintah docker-
compos up semua langsung dibuatkan oleh docker-compose.
MENGAKSES CONTAINER
Setalah kita sudah membuat container kita sendiri, menggunakan perintah docker dan juga
perintah docker-compose. mungkin ada yang bertanya apakah kita bisa masuk kedalam
container selayaknya kita login menggunakan ssh ke dalam server? tentu saja bisa, pada materi
kali ini kita membahas tentang bagaimana cara mengakses Docker container, dan mengeksekusi
perintah didalamnya.
Sebelumnya seperti biasa kita akan membahas struktur commandnya terlebih dahulu,
MODUL DOCKER 22
LATIHAN 5: MENGAKSES CONTAINER
Bagaimana jika kita masuk ke container yang tadi kita sudah buat? langsung saja kita eksekusi
perintah berikut:
Setelah kita masuk kedalam kita bisa melakukan banyak hal seperti jika kita login kedalam
suatu sever virtual yang utuh, perbedaannya suatu Docker container biasanya sudah dibatasi
pengguanan command didalamnya, dan juga package-package yang tersedia hanya package
yang dibutuhkan oleh container tersebut.
Mari kita mencoba mengedit file index.html yang tadi sudah kita masukan kedalam melalui
Dockerfile.
1 cd /usr/share/nginx/html
Nah jika kita lihat kembali melalui browser, isi dari web kita sudah berubah.
jangan lupa untuk keluar dari container dengan mengetikan perintah
Mari kita coba mengeksekusi perintah dari luar container. exit
MODUL DOCKER 23
DOCKER VOLUME
Volume adalah mekanisme untuk menyimpan data yang dihasilkan dan digunakan oleh
container Docker. Jika mount dan bind bergantung pada struktur direktori dan OS dari host,
maka volume sepenuhnya dikelola oleh Docker. Volume memiliki beberapa keunggulan
dibandingkan mount dan bind:
▸ Volume lebih mudah untuk dibackup atau dimigrasi daripada bind mount.
▸ Anda dapat mengelola volume menggunakan perintah Docker CLI atau API Docker.
▸ Driver volume memungkinkan Anda menyimpan volume di remote host atau penyedia cloud,
▸ Volume di Docker Desktop memiliki kinerja yang jauh lebih tinggi daripada bind mount dari
MODUL DOCKER 24
LATIHAN 6: MEMBUAT DOCKER VOLUME
Untuk menampilkan daftar docker volume yang berada pada host, silakan untuk menjalankan
perintah ini.
Untuk menampilkan informasi docker volume yang berada pada host, silakan untuk
menjalankan perintah ini.
1 version: "3.3"
2 services:
3 web:
4 image: deadlyug/myimage:1.0
5 ports:
6 - 8081:80
7 restart: always
8 volumes:
9 - myvolume:/usr/share/nginx/html10
11 volumes:
12 myvolume:
13 external: true
1 docker-comose up -d --force-recreate
MODUL DOCKER 25
option --force-recreate, ada option untuk memaksa docker-compose membuat
container dari awal
Untuk menguji konten pada volume yang telah ditambahkan ke container, silakan masuk
kembali ke dalam container dengan perintah:
1 cd /usr/share/nginx/html
1 docker-compose down
1 docker-compose up -d
Jika berhasil itu artinya kita Alhamdulillah sudah sampai ke-akhir modul ini, kita sudah belajar
banyak hal tentang docker, dari membuat image, mengupload image kita, menjalankan
container, mengelola container menggunakan docker-compose, untuk menambah pemahaman
kita tentang bagaimana docker bekerja mari kita tutup modul ini dengan mendeploy aplikasi
WordPress.
Jika ingin menghapus docker volume, cukup dengan dengan perintah ini:
Jika error, pastikan docker container sudah dimatikan. setelah itu coba hapus kembali docker volume.
MODUL DOCKER 26
PENUTUP: MENDEPLOY APLIKASI WORDPRESS
1 mkdir wordpress
1 version: '2'
2 services:
3 mariadb:
4 image: docker.io/bitnami/mariadb:10.3
5 volumes:
6 - 'mariadb_data:/bitnami/mariadb'
7 environment:
8 # ALLOW_EMPTY_PASSWORD is recommended only for development.
9 - ALLOW_EMPTY_PASSWORD=yes
10 - MARIADB_USER=bn_wordpress
11 - MARIADB_DATABASE=bitnami_wordpress
12 wordpress:
13 image: docker.io/bitnami/wordpress:5
14 ports:
15 - '8082:8080'
16 - '443:8443'
17 volumes:
18 - 'wordpress_data:/bitnami/wordpress'
19 depends_on:
20 - mariadb
21 environment:
22 # ALLOW_EMPTY_PASSWORD is recommended only for development.
23 - ALLOW_EMPTY_PASSWORD=yes
24 - WORDPRESS_DATABASE_HOST=mariadb
25 - WORDPRESS_DATABASE_PORT_NUMBER=3306
26 - WORDPRESS_DATABASE_USER=bn_wordpress
27 - WORDPRESS_DATABASE_NAME=bitnami_wordpress
28 - WORDPRESS_USERNAME=admin
29 - WORDPRESS_PASSWORD=admin
30 volumes:
31 mariadb_data:
32 driver: local
33 wordpress_data:
34 driver: local
Moment of truth, eksekusi perintah di bawah ini. setelah berhasil silahkan akses melalui browser
localhost:8082
1 | docker-compose up -d
MODUL DOCKER 27
DAFTAR PUSTAKA
niagahoster | https://www.niagahoster.co.id/blog/docker-tutorial/
garudacyber | https://news.garudacyber.co.id/
belajarlinux.id | https://belajarlinux.id/docker-pengenalan-docker-compose/
Powered by Wiki.js
MODUL DOCKER 28