Docker Engine
Di bab ini kita akan melihat apa yang terjadi dibelakang Docker Engine.
Kamu bisa menggunakan Docker tanpa memahami apa saja yang akan kita pelajari di bab yang fokus pada operation ini. Namun, agar benar-benar bisa menguasai suatu teknologi, kamu juga perlu memahami proses yang terjadi dibelakang layar. Jadi, jika kamu memang ingin menguasai Docker, bab ini wajib kamu baca.
Penulis membagi pembahasannya menjadi sebagai berikut:
• Docker Engine – Penjelasan Singkat • The Docker Engine • Pengaruh Open Container Initiative (OCI) • runc • containerd • Memulai container baru • What’s the shim all about • Implementasi Docker Engine di Linux
Mari kita mulai belajar tentang Docker Engine.
Docker Engine - Penjelasan Singkat
Docker Engine adalah istilah teknis untuk komponen Docker di sisi server yang bertugas menjalankan dan mengelola container. Jika kamu pernah bekerja dengan VMware, Docker Engine bisa dianalogikan dengan ESXi.
Docker Engine bersifat modular dan dibangun dari banyak komponen kecil yang masing-masing memiliki fungsi khusus. Komponen-komponen ini berasal dari berbagai proyek seperti OCI, CNCF, dan Moby Project.
Dalam banyak hal, Docker Engine bisa diibaratkan seperti mesin mobil:
- Mesin mobil tersusun dari banyak komponen khusus yang bekerja bersama agar mobil bisa berjalan — seperti intake manifold, throttle body, silinder, piston, busi, exhaust manifold, dan masih banyak lagi.
- Docker Engine juga tersusun dari banyak tool khusus yang bekerja bersama untuk membuat dan menjalankan container — seperti API, image builder, high-level runtime, low-level runtime, shim, dan komponen lainnya.
Diagram berikut menampilkan komponen Docker Engine yang membuat dan menjalankan container. Ada banyak komponen lain, tapi diagram ini disederhanakan hanya untuk komponen yang membuat dan menjalankan container.

Disepanjang buku, kita akan menyebut runc dan containerd dengan huruf kecil "r" dan "c" sesuai penyebutan di dokumentasi resminya.
The Docker Engine
Saat Docker pertama kali di rilis,