Docker
Docker architektúra
Kliens-szerver modell: Docker CLI, dockerd daemon és registry; image layer + container layer.
Docker architektúra
A Docker kliens-szerver architektúrán alapul. Három fő komponens van:
Docker Client
A CLI eszköz, amellyel kommunikálsz (docker parancs). A kéréseket REST API-n keresztül továbbítja a daemon felé.
Docker Daemon (dockerd)
A háttérben futó szerver folyamat, amely:
- kezeli az image-eket és konténereket
- figyeli a hálózatokat és volume-okat
- kommunikál a registry-vel
Docker Registry
Tárolórendszer az image-eknek (Docker Hub vagy privát registry).
┌─────────────┐ REST API ┌──────────────────┐
│ Docker CLI │ ─────────────────────▶ │ Docker Daemon │
│ (client) │ │ (dockerd) │
└─────────────┘ └────────┬─────────┘
│
┌─────────────────────┼──────────────────┐
│ │ │
┌─────▼──────┐ ┌─────────▼──────┐ ┌───────▼───────┐
│ Images │ │ Containers │ │ Networks / │
│ │ │ │ │ Volumes │
└────────────┘ └────────────────┘ └───────────────┘Az image és a konténer kapcsolata
Az image rétegekből áll. Konténer indításakor a Docker hozzáad egy írható réteget (container layer) a csak olvasható image-rétegek tetejére. A konténer törlésekor ez az írható réteg elvész, ezért perzisztenciához volume-ot használj.
Rövid összefoglaló
- A Docker CLI a kliens, a
dockerda daemon/szerver. - A daemon kezeli az erőforrásokat (image, konténer, network, volume).
- A konténer írható layer; perzisztenciához volume kell.