Kodeloka
  1. Kodeloka
  2. Kelas Docker
  3. Materi

Architecture · Modul 4 dari 21

Docker Architecture & Core Ecosystem

Arsitektur Client-Server Docker: Docker Daemon (dockerd), Docker CLI, REST API, Docker Objects, & Docker Hub.

Arsitektur & Ekosistem Komponen Docker

Docker menggunakan arsitektur Client-Server. Saat Anda mengetikkan perintah docker di terminal, Anda sedang berinteraksi dengan Docker Client yang mengirimkan instruksi ke Docker Daemon.

Komponen Utama Arsitektur Docker:

1. Docker Client (CLI)

Alat baris perintah (command line) tempat pengguna mengetikkan perintah seperti docker run, docker build, atau docker ps.

2. Docker Host & Daemon (dockerd)

Service background yang terus berjalan di host OS. Docker Daemon bertugas mengelola objek-objek Docker (Images, Containers, Networks, Volumes) dan mendengarkan permintaan REST API dari Client.

3. Docker Registry (Docker Hub)

Gudang penyimpanan Docker Images (seperti GitHub untuk kode). **Docker Hub** adalah registry publik resmi tempat kita mengunduh image gratis seperti Nginx, Node.js, Python, PostgreSQL, dll.

4 Objek Utama Docker (Docker Objects):

  • Image: Template read-only yang berisi cetak biru (blueprint) aplikasi & lingkungan.
  • Container: Instance yang sedang berjalan (runnable instance) dari suatu Image.
  • Network: Jalur komunikasi antar kontainer dan internet.
  • Volume: Tempat penyimpanan data permanen di luar siklus hidup kontainer.
[ Docker Client ]  ---> REST API ---> [ Docker Daemon (dockerd) ]
 (docker run)                             |-- Images
                                          |-- Containers
                                          |-- Networks
                                          |-- Volumes
                                          ^
                                          | Pull / Push
                                [ Docker Registry (Hub) ]