Docker Itu Apa? Bayi Aja Ngerti! 🐣🐳
Halo teman-teman developer kece! Kali ini aku mau bahas Docker, tapi pake bahasa bayi, jadi jangan takut kalau kamu masih newbie. Yuk kita mulai petualangan dunia kontainer!
📚 Daftar Isi
- 🧁 Apa Itu Docker Image?
- 🚀 Apa Itu Docker Container?
- 🧑🍳 Apa Itu Docker Compose?
- 📦 Apa Itu Docker Volume?
- 🧠 Kesimpulan
- ✨ Siap Mainan Docker?
- 🙌 Terima Kasih!
🧁 Apa Itu Docker Image?
Image itu kayak cetakan kue.
Bayangin kamu punya cetakan kue bentuk bintang ⭐. Cetakan ini nggak bisa dimakan, tapi bisa dipakai buat bikin kue yang bentuknya sama.
Nah di Docker, image itu file template yang isinya:
- Sistem operasi mini (base image)
- Aplikasi (kayak NGINX, Node.js, MySQL, dll)
- Semua hal yang dibutuhin buat ngejalanin aplikasi itu.
Contoh:
docker pull nginx
Kamu kayak lagi ngambil cetakan kue dari toko online (Docker Hub).
🚀 Apa Itu Docker Container?
Container itu kuenya yang udah jadi. Bisa dimakan!
Setelah kamu punya cetakan (image), kamu tuang adonan (kode dan config), terus panggang... Taraaa~ jadi kuenya! Itulah container.
Container adalah image yang sedang dijalankan.
Contoh:
docker run nginx
Kamu lagi ngidupin server dari cetakan nginx
. Bisa dikontrol, dimakan (eh), dimatiin, atau dibuang.
🧑🍳 Apa Itu Docker Compose?
Docker Compose itu koki yang masak banyak menu sekaligus.
Bayangin kamu mau masak:
- Nasi 🍚
- Ayam goreng 🍗
- Sayur 🥦
- Sambal 🌶️
Kalau masak satu-satu, capek banget! Tapi kalau kamu punya koki yang bisa baca daftar resep, cukup kasih 1 kertas aja (docker-compose.yml
) dan dia langsung masak semua.
Contoh docker-compose.yml
:
version: "3.9"
services:
web:
image: nginx
db:
image: mysql
cache:
image: redis
Terus kamu jalankan:
docker compose up
Boom! Semua langsung hidup bareng kayak rumah tangga harmonis.
📦 Apa Itu Docker Volume?
Volume itu kayak laci khusus buat nyimpen barang, biar gak ilang pas mainan dibongkar pasang.
Bayangin kamu punya mainan yang suka kamu bongkar-pasang (kayak Lego). Nah, kamu pasti punya laci tempat nyimpen barang penting kayak stiker, baterai, atau koleksi mini-figurenya.
Kalau mainannya rusak atau kamu ganti baru, isi lacinya tetap aman.
🚢 Hubungannya dengan Docker:
Di Docker:
- Container itu kayak mainan: bisa dihancurkan, dibikin ulang.
- Tapi... data penting (misalnya database, file upload, config user) harus disimpan di tempat khusus biar gak hilang saat container mati.
Nah, Docker Volume adalah tempat penyimpanan data permanen di luar container.
🔧 Contoh:
docker run -v mydata:/app/data myimage
Artinya:
- Kamu bikin volume bernama
mydata
. - Semua data di dalam folder
/app/data
akan disimpan kemydata
dan tetap ada walau containernya dihentikan atau dihapus.
🤓 Kenapa Volume Penting?
- 📁 Data persist (tidak hilang saat container mati)
- 💨 Lebih cepat dan aman dibanding mount manual dari host
- 🔄 Bisa dipakai banyak container bareng-bareng (misal: container frontend & backend sharing folder)
🧠 Kesimpulan
Image
Cetakan kue ⭐ — Template aplikasi
Container
Kue yang jadi 🧁 — Image yang sedang hidup
Docker Hub
Toko online kue 🛒 — Tempat download image
Compose
Koki masak banyak 🍳 — Jalanin banyak container sekaligus
Volume
Laci penyimpanan 🗄️ — Simpan data biar gak hilang
✨ Siap Mainan Docker?
Coba deh install Docker, terus mulai dari:
docker run hello-world
Kalau keluar tulisan "Hello from Docker!", artinya kamu udah siap menjelajahi dunia kontainer kayak DevOps sejati!