Pada tulisan saya sebelumnya kita sudah membahas tentang
Cara Menginstal Docker di Linux pada distribusi Manjaro, untuk penginstalan Docker pada OS lain akan kita bahas di lain waktu. Pada tulisan ini saya akan melanjutkan tulisan tersebut mengenai penggunaan Docker. Kita ulas sebentar tentang apa itu Docker.
Docker adalah teknologi containerisasi yang memungkinkan kita untuk membangun, menguji, dan menggunakan aplikasi dengan cepat yang dapat berjalan dimana saja dan terisolasi dalam sebuah wadah yang disebut sebagai
container. Docker pada dasarnya merupakan perangkat virtual untuk menjalankan sebuah
image. Konsep Docker ini mirip dengan
virtual machine, hanya saja Docker memiliki beberapa keunggulan yang tidak dimiliki
virtual machine. Pada saat ini, Docker dapat berjalan pada sistem operasi Linux, Mac OS dan Windows.
Arsitektur pada Docker menggunakan
client dan
server, yang mana
docker client mengirimkan
request ke
docker daemon untuk untuk membangun, mendistribusikan dan menjalankan
container docker. Keduanya (
docker client dan
docker daemon) dapat berjalan pada sistem yang sama. Antara
docker client dan
docker daemon berkomunikasi via socket menggunakan
RESTful API.
 |
Arsitetur Docker: https://docs.docker.com/get-started/overview/ |
Pembahasan yang terdapat tulisan kali ini berisi tentang:
Istilah-istilah pada Docker
Berikut adalah istilah-istilah yang ada pada Docker.
Images
Di dalam Docker,
Image merupakan dasar
template untuk membuat sebuah
docker container. Sebuah
image biasanya berisi OS maupun aplikasi yang telah diinstall dan telah jadi
(ter-compile).
Image ini digunakan untuk menjalankan
container. Di
Docker Hub, terdapat banyak
image yang dapat kita pilih dan kita gunakan sebagai
base image.
Container
Container merupakan sebuah
image yang telah dikemas dan dapat dijalankan. Kita dapat membuat, memulai, menghentikan, memindahkan ataupun menghapus
container menggunakan Docker API atau CLI. Kita juga dapat mengkoneksikan
container ke satu jaringan atau bahkan lebih.
Secara
default, sebuah
container akan terisolasi dari
container lainnya dan mesin
host.
Docker Registry
Docker Registry adalah repositori distribusi dari kumpulan
docker image yang terpusat, baik bersifat
public ataupun
private. Docker Registry yang bersifat public disebut dengan Docker Hub. Disini kita dapat berbagi image yang telah kita buat ataupun menggunakan image yang sudah ada yang dibuat oleh orang lain.
Dockerfile
Dockerfile merupakan sebuah file yang mana pada file tersebut berisikan berbagai macam instruksi yang akan dieksekusi untuk membangun sebuah
image.
Perintah-perintah pada Docker
Docker memiliki berbagai macam perintah dalam penggunaannya, berikut penjelasan
fungsi dan perintah yang digunakan pada Docker.
Download Docker Image
Untuk mendownload sebuah
image dari
Docker Hub, gunakan perintah berikut:
docker pull [image name]
Contoh:
docker pull hello-world
Hasilnya akan seperti ini:
Using default tag: latest
latest: Pulling from library/hello-world
0e03bdcc26d7: Pull complete Digest: sha256:6a65f928fb91fcfbc963f7aa6d57c8eeb426ad9a20c7ee045538ef34847f44f1
Status: Downloaded newer image for hello-world:latest
docker.io/library/hello-world:latest
Perlu diketahui bahwasannya kecepatan
download dari
image yang kita ambil tergantung koneksi internet yang kita pakai.
Melihat Daftar Image
Perintah ini berfungsi untuk melihat
image yang pernah kita
download ataupun kita buat.
docker images
docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql 8.0.20 a7a67c95e831 4 weeks ago 541MB
jenkins/jenkins lts-alpine 58047ae198b8 4 weeks ago 228MB
mariadb latest b6184b68d1fd 4 weeks ago 357MB
phpmyadmin/phpmyadmin latest f257b784d16f 5 weeks ago 468MB
php 7.3-fpm-alpine 9a43543afbeb 5 weeks ago 74.6MB
Menghapus Image
docker rmi [image ID]
Membuat Container Baru
Perlu diingat, untuk membuat sebuah
container dibutuhkan sebuah
image. Jadi sebelum membuat
container pastikan
image sudah tersedia. Untuk membuat
container baru gunakan perintah berikut:
docker run [image name] [command to run]
Pada
command to run kita bisa menambahkan
`-d` agar
container berjalan di
background.
Melihat Container yang Berjalan
Perintah ini digunakan untuk melihat daftar dari
container yang sedang digunakan.
docker ps
Melihat Semua Container yang Ada
Pada perintah ini digunakan untuk melihat semua
container yang ada, baik yang sedang digunakan ataupun tidak.
docker ps --all
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
eaf30c3e8c05 hello-world "/hello" 5 minutes ago Exited (0) 5 minutes ago frosty_newton
fe30a0e38d8f hello-world "/hello" 6 minutes ago Exited (0) 6 minutes ago pedantic_bhaskara
d0cfe3e795e7 hello-world "/hello" 7 minutes ago Exited (0) 7 minutes ago unruffled_neumann
9fcfcdd4c6f1 phpmyadmin/phpmyadmin "/docker-entrypoint.…" 3 weeks ago Exited (0) 2 weeks ago phpmyadmin
bb240e070dc4 mariadb "docker-entrypoint.s…" 3 weeks ago Exited (0) 2 weeks ago mariadb
b88e431c0211 jenkins/jenkins:lts-alpine "/sbin/tini -- /usr/…" 3 weeks ago Exited (255) 3 weeks ago 0.0.0.0:8080->8080/tcp, 0.0.0.0:50000->50000/tcp jenkins
Menjalankan Container
Perintah ini digunakan untuk memulai atau menjalankan
container yang sudah ada.
docker start [container ID]
Menghentikan / Stop Container
docker stop [container ID]
Menghapus Container
Perintah berikut digunakan untuk menghapus
container yang sudah kita buat.
docker rm [container ID]
Demikian sedikit dasar
cara penggunaan Docker. Untuk mempelajari lebih lanjut mengenai Docker, kalian bisa melihat dokumentasi resmi dari Docker. Terima kasih.
Keywords:
Referensi:
- https://docs.docker.com/get-started/overview/
- https://andykamt.com/belajar-docker-mengenal-docker-dan-install-docker/