Skip to content

Pengenalan Docker

Docker dipakai untuk menjalankan aplikasi beserta semua kebutuhannya / dependency nya di dalam container. Kebutuhan tersebut dapat berupa runtime, library, konfigurasi, dan file aplikasi. Container adalah lingkungan terisolasi yang bisa dijalankan dengan cara yang sama di laptop kamu, laptop teman, atau server.

Tanpa Docker, setup project sering berakhir dengan masalah "di laptop saya jalan, di server tidak". Versi Node bisa berbeda, library OS mungkin belum tersedia, atau database belum ter-install. Dengan Docker, laptop dan server bisa menjalankan paket aplikasi (image) yang sama, sehingga environment-nya lebih konsisten.

Kapan Docker dipakai?

Di pekerjaan, Docker biasanya dipakai untuk beberapa kebutuhan berikut:

Menyiapkan environment yang konsisten. App, runtime, dan library dikemas ke dalam image. Orang baru di tim cukup menjalankan docker compose up, tanpa mengikuti panduan setup yang panjang.

Mengisolasi dependency. Kamu bisa menjalankan PostgreSQL 16 untuk project A dan PostgreSQL 14 untuk project B di mesin yang sama, tanpa bentrok dengan install global.

Menjalankan beberapa service sekaligus. App web jarang berjalan sendirian. Biasanya ada database, Redis, atau queue. Docker dan Compose bisa menjalankan service tersebut sebagai container yang saling terhubung.

Use case yang umum adalah local development, menjalankan dependency di CI, dan deploy image yang sudah di-build ke server atau platform yang mendukung container. Dalam konteks ini, dependency berarti service yang dibutuhkan app, seperti database atau Redis. Setelah memahami kapan Docker dipakai, lanjut ke mental model image, container, dan registry.