Cluster setup¶
Topology¶
- 2 managers (Vbox1, nuc1), 2 workers (nuc2, nuc3).
- Ingress mesh routing on all nodes — published ports are reachable on any node IP.
Conventions¶
- Stack files live under
/Volumes/Data/swarm/sites/<name>/on the workstation. - Personal-scope services (this KB) are pinned to nuc1 while there's no registry.
- When a private registry is added, services can fan out across all 4 nodes.
Why pinned to nuc1?
Without a registry, an image built on one node isn't visible to others.
A placement.constraints: node.hostname == nuc1 keeps Swarm from
scheduling the task on a node that can't pull the image.