Arquitetura Docker: O Blueprint da Matrix ๐๏ธ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ DOCKER ARCHITECTURE BLUEPRINT โ
โ โ
โ Client โ Docker Host โ Container Runtime โ Registry โ
โ โ
โ "A arquitetura que sustenta o multiverso dos containers" โ
โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Componentes Principais ๐ง
1. Docker Client
โโโโโโโโโโโโโโโโโโโโโโโ
โ Docker CLI โ
โโโโโโโโโโโโโโโโโโโโโโโค
โ - docker build โ
โ - docker pull โ
โ - docker run โ
โ - docker push โ
โโโโโโโโโโโโโโโโโโโโโโโ
2. Docker Host
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Docker Daemon โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโ โ
โ โ Containers โ โ Images โ โ
โ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโ โ
โ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโ โ
โ โ Volumes โ โ Networks โ โ
โ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
3. Container Runtime
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ High-Level Runtime (Docker) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Container Engine (containerd) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Container Runtime (runc) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Linux Kernel โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
4. Registry
โโโโโโโโโโโโโโโโโโโโโโ
โ Docker Registry โ
โโโโโโโโโโโโโโโโโโโโโโค
โ - Docker Hub โ
โ - Private Registryโ
โ - Mirror Registry โ
โโโโโโโโโโโโโโโโโโโโโโ
Fluxo de Comunicação ๐
Build Flow
[Client] โโbuildโโ> [Daemon] โโcreateโโ> [Image]
โ โ โ
โโโโโโโโโโโโโโโโโโโโโดโโโโโโโpushโโโโโโโโ
โ
[Registry]
Run Flow
[Client] โโrunโโ> [Daemon] โโpullโโ> [Registry]
โ
v
[Container]
Componentes Detalhados ๐
Docker Daemon (dockerd)
Gerencia objetos Docker
Manipula API requests
Gerencia containers
Controla imagens
containerd
Gerenciamento de runtime
Execução de containers
Gerenciamento de imagens
Interface com runc
runc
Criação de containers
Implementação OCI
Interface com kernel
Isolamento de recursos
Waifu Tech Tips ๐ก
Diagrama de Interação ๐
โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ
โ Docker CLI โโโโโ>โDocker Daemon โโโโโ>โ containerd โ
โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ
โ โ
v v
โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ
โ Registry โ โ runc โ
โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ
Segurança e Isolamento ๐
Namespace Isolation
PID Namespace
Network Namespace
Mount Namespace
UTS Namespace
IPC Namespace
User Namespace
Control Groups (cgroups)
CPU
Memory
I/O
Network
Devices
Networking Architecture ๐
Default Networks
โโโโโโโโโโโโโโโโโโโ
โ bridge โ
โโโโโโโโโโโโโโโโโโโค
โ host โ
โโโโโโโโโโโโโโโโโโโค
โ none โ
โโโโโโโโโโโโโโโโโโโ
Custom Networks
Bridge
Overlay
Macvlan
IPvlan
Storage Architecture ๐พ
Storage Drivers
overlay2
devicemapper
btrfs
zfs
vfs
Volume Types
โโโโโโโโโโโโโโโโโโโ
โ Named Volumes โ
โโโโโโโโโโโโโโโโโโโค
โ Bind Mounts โ
โโโโโโโโโโโโโโโโโโโค
โ tmpfs Mounts โ
โโโโโโโโโโโโโโโโโโโ
Checkpoint โ
Você agora entende:
[x] Componentes principais
[x] Fluxo de comunicação
[x] Container runtime
[x] Networking
[x] Storage
[x] Segurança
Próximos Passos ๐ฏ
Referências ๐
16 abril 2025