Docker 1.12 přináší Swarm Mode — orchestrace kontejnerů integrovaná přímo v Docker Engine. Jednoduchost setupu vs funkčnost Kubernetes.
Orchestrace pro všechny¶
Docker 1.12 integroval Swarm Mode přímo do Docker Engine — žádné externí nástroje, žádná komplexní instalace. docker swarm init a máte cluster.
Docker tím reaguje na rostoucí dominanci Kubernetes. Argument je jednoduchý: pokud už používáte Docker, proč instalovat další vrstvu? Swarm Mode je Docker-native orchestrace.
Setup a služby¶
Vytvoření Swarm clusteru:
# Na manager nodu
docker swarm init --advertise-addr 192.168.1.1
# Na worker nodech
docker swarm join --token SWMTKN-xxx 192.168.1.1:2377
# Deployment služby
docker service create \
--name web \
--replicas 3 \
--publish 80:80 \
--update-delay 10s \
nginx:latest
# Škálování
docker service scale web=10
Všechno přes Docker CLI — žádné YAML manifesty, žádné nové koncepty pro Docker uživatele.
Networking a load balancing¶
Swarm Mode přináší:
- Overlay networking** — multi-host networking bez konfigurace
- Ingress load balancing** — built-in routing mesh, request na libovolný node se směruje na správný kontejner
- DNS-based service discovery** — služby se najdou jménem
- Rolling updates** — update s kontrolou health a rollback
Pro jednoduché deploymenty je to vše, co potřebujete.
Swarm vs Kubernetes: realistické srovnání¶
Swarm Mode je jednodušší, ale Kubernetes nabízí víc:
- Swarm** — rychlý setup, Docker-native, méně features, menší komunita
- Kubernetes** — strmá learning curve, více abstrakcí (Pods, Deployments, ConfigMaps), obrovská komunita a ekosystém
Pro malé až střední projekty s menším týmem je Swarm pragmatická volba. Pro enterprise s komplexními požadavky na orchestraci je Kubernetes bezpečnější sázka na budoucnost.
Závěr: jednoduchost jako feature¶
Docker Swarm Mode je skvělý pro týmy, které potřebují orchestraci bez komplexity Kubernetes. Pokud vám stačí basic scheduling, rolling updates a service discovery, Swarm splní vaše potřeby s minimálním overhead.