Penutup Section Pengantar Docker berjanji bahwa perjalanan kita berikutnya berpindah dari konsep ke praktik, dan langkah praktik pertama itulah yang sekarang berada di depan mata: memasang Docker ke dalam mesin yang kita miliki. Sebelum mengunduh satu berkas installer pun, ada satu keputusan yang menentukan seluruh pengalaman berikutnya — Docker dipasang di lingkungan apa dan dalam bentuk apa. Budi dengan laptop Ubuntu-nya dan Siti dengan laptop Windows-nya akan berakhir pada pilihan yang berbeda, dan keduanya sama-sama benar karena pilihan itu mengikuti peran masing-masing mesin. Chapter ini memetakan jalur-jalur yang tersedia supaya keputusan kita terambil secara sadar, bukan karena kebetulan mengikuti tutorial pertama yang ditemukan di mesin pencari.

Docker Engine atau Docker Desktop #

Kedua nama ini sudah kita kenal pada Chapter Docker Engine dan Docker Desktop: Engine adalah distribusi inti yang berjalan native di Linux, sedangkan Desktop adalah aplikasi terpadu yang membawa Engine di dalam VM internal beserta seluruh peralatan pendukungnya. Untuk keperluan memilih lingkungan, keenam aspek berikut adalah pertimbangan yang paling sering menentukan:

AspekDocker EngineDocker Desktop
PlatformLinux secara nativeWindows, macOS, dan Linux lewat VM internal
Komponendockerd, CLI, containerd, runc, plus dua plugin intiEngine lengkap ditambah BuildKit, buildx, Compose, dashboard GUI, Extensions, dan Scout
GUITidak ada — semua lewat terminalAda — dashboard grafis untuk container, image, dan volume
ResourceMemakai resource host secara langsungResource dialokasikan ke VM internal terlebih dahulu
Target pemakaiServer, virtual machine, dan pelari CIDeveloper yang bekerja di laptop sehari-hari
LisensiOpen source dan gratisGratis untuk personal, edukasi, dan usaha kecil; berbayar untuk organisasi besar

Tabel di atas memperlihatkan bahwa tidak ada komponen inti yang hilang di salah satu sisi — keduanya memakai dockerd, containerd, dan runc yang sama, sehingga keahlian yang kita bangun di satu jalur berlaku penuh di jalur satunya. Perbedaannya terletak pada kemasan dan model lisensinya. Engine memberi kita kontrol penuh dengan jejak resource paling kecil, sementara Desktop memberi kenyamanan berupa pemasangan sekali klik dan dashboard visual dengan konsekuensi berbagi resource bersama VM internal.

Empat Pilihan Lingkungan #

Perbandingan Engine versus Desktop baru setengah dari cerita. Di lapangan, ada empat pola lingkungan yang paling sering kita jumpai, dan masing-masing punya tempatnya:

LingkunganPlatformPaling cocok untukCatatan khas
Docker Engine di Linux serverLinux server, VM, VPSServer produksi dan pelari CIInstalasi paket resmi, tanpa GUI, lisensi bebas
Docker Desktop di laptopWindows, macOS, LinuxPekerjaan development harianSatu installer membawa semua peralatan
WSL 2 sebagai backend WindowsWindows 10 22H2+ atau Windows 11Developer di mesin WindowsDesktop membangun VM-nya di atas WSL 2
Remote host via docker contextKlien di platform mana punTim yang berbagi satu server DockerCLI di laptop, daemon di server jauh

Mari kita telaah makna setiap baris pada tabel di atas:

  1. Engine di Linux server — pola klasik yang mendunia: daemon berjalan native di server tanpa layar, dijauhi dari GUI yang memakan memori, dan dikelola sepenuhnya lewat terminal atau alat otomasi. Inilah bentuk Docker di balik mayoritas server produksi dan pelari CI.
  2. Desktop di laptop — pola bagi developer yang ingin langsung produktif: satu pemasangan di Windows, macOS, atau Linux langsung menghadirkan Engine, CLI, buildx, Compose, dan dashboard dalam keadaan siap pakai, tanpa perlu merakit VM Linux secara manual.
  3. WSL 2 sebagai backend Windows — pada Windows, Docker Desktop membangun VM internal-nya di atas WSL 2. Sebagian developer juga memasang Docker Engine secara langsung di dalam distribusi Linux milik WSL 2; pola ini memberi rasa Linux penuh di dalam Windows, meskipun semua urusan VM menjadi tanggungan kita sendiri.
  4. Remote host via docker context — daemon tidak harus berada di mesin yang sama dengan CLI. Dengan docker context, klien di laptop dapat diarahkan ke daemon di server jauh lewat endpoint seperti ssh://[email protected], seolah-olah daemon berjalan lokal.

Panduan Memilih Berdasarkan Peran #

Cara termudah memilih adalah melihat peran mesin yang akan memasang Docker, bukan melihat fitur yang paling menggoda. Laptop developer bekerja paling nyaman dengan Docker Desktop karena dashboard, Extensions, dan pengaturan resource lewat GUI menghemat waktu — inilah jalur yang diambil Siti di laptop Windows 11 miliknya. Sebaliknya, mesin tanpa layar seperti server, virtual machine, dan pelari CI hanya akan dirugikan oleh GUI; Docker Engine yang ramping dan gratis adalah satu-satunya pilihan yang masuk akal di sana — inilah jalur yang diambil Budi untuk server latihan kantornya. Tim kecil yang tidak ingin tiap anggota memasang Docker sendiri dapat memakai pola keempat: satu server Linux menjalankan Engine, lalu semua anggota tim mengarahkan docker context dari laptop masing-masing ke server itu. Diagram berikut merangkum alur keputusannya:

Mari kita telaah arti setiap cabang pada diagram di atas:

  1. Cabang laptop developer — bila mesinnya adalah laptop kerja harian, Docker Desktop hampir selalu menjadi jawaban tercepat menuju produktif, pada platform Windows, macOS, maupun Linux.
  2. Cabang server atau pelari CI — bila mesinnya headless dan melayani beban kerja otomatis, Docker Engine adalah pilihan yang hemat dan bebas pertimbangan lisensi.
  3. Cabang daemon jauh — bila server Docker sudah tersedia dan kita hanya butuh CLI, docker context menghubungkan laptop ke daemon jauh yang sudah berjalan; yang diperlukan di laptop hanyalah docker CLI itu sendiri.

Catatan Lisensi Docker Desktop #

Satu pertimbangan terakhir bersifat administratif tapi penting bagi lingkungan kerja. Docker Desktop menerapkan model lisensi yang membedakan pemakai perorangan dari organisasi besar: pemakaian untuk keperluan personal, edukasi, dan usaha kecil sepenuhnya gratis, sedangkan organisasi dengan lebih dari 250 karyawan atau pendapatan tahunan di atas 10 juta dolar AS memerlukan langganan berbayar.

Dengan peta lingkungan yang kini jelas, saatnya tangan kita menyentuh terminal. Karena mayoritas server dunia berjalan di atas Linux dan jalur ini juga menjadi fondasi bagi pola-pola lain, pembongkaran pertama kita jatuh pada pemasangan Docker Engine di Linux — dari membersihkan paket yang bentrok sampai daemon menyala dan siap menerima perintah. Chapter Instalasi Docker di Linux memandu Budi, dan kita, mengeksekusinya langkah demi langkah.

Referensi #

  • Install Docker Engine — daftar jalur pemasangan resmi Engine untuk setiap distribusi Linux.
  • Docker Desktop — komponen, persyaratan sistem, dan model distribusi Docker Desktop.
  • docker context — referensi resmi pengelolaan context untuk daemon jauh.