Digital Transformation
Docker
TL;DR: Docker mengemas aplikasi plus dependency ke dalam container yang berjalan identik di laptop developer, server staging, dan production. Ini menghilangkan masalah klasik "di laptop saya jalan".
Apa itu Docker?
Docker adalah platform open-source yang dirilis sejak 2013 untuk membuat, men-deploy, dan menjalankan aplikasi dalam container. Container mirip virtual machine, tapi jauh lebih ringan karena berbagi kernel OS host. Sebuah Dockerfile mendefinisikan resep image, lalu image di-run menjadi container. Untuk deployment modern, Docker sering dipadukan dengan layanan cloud computing dan arsitektur API.
Konsep Inti
| Istilah | Arti |
|---|---|
| Image | Snapshot read-only berisi aplikasi dan dependency |
| Container | Instance running dari sebuah image |
| Dockerfile | File teks berisi instruksi build image |
| Registry | Tempat menyimpan image, contoh Docker Hub atau GitHub Container Registry |
| Compose | Tool untuk menjalankan multi-container sekaligus via YAML |
Kenapa Penting?
Untuk bisnis Indonesia yang punya tim remote atau pakai banyak environment (lokal, staging, production di VPS), Docker memastikan tidak ada drift konfigurasi. Versi PostgreSQL, Node, atau Python sama persis di semua tempat. Hasil praktisnya, bug "jalan di laptop A tapi error di server" hampir hilang.
Pertanyaan Umum
Apakah Docker sama dengan virtual machine?
Tidak. VM membawa kernel OS sendiri, ukurannya gigabyte dan boot lama. Container Docker berbagi kernel host, ukurannya megabyte dan start dalam hitungan detik.
Apakah aplikasi statis perlu Docker?
Tidak wajib. Website Next.js yang di-deploy ke Vercel sudah ditangani platform. Docker lebih relevan untuk backend custom, database self-hosted, atau internal tools.
Istilah Terkait