One server is enough to begin. Multiple servers need stable addresses through which they can reach each other.
Server communication addresses
The address used between servers can differ from the public address used by your browser. Use a reachable private address where appropriate; loopback cannot serve as the address other servers use to reach this machine.
Network and access
| Port | Purpose | Access |
|---|---|---|
| TCP 9000 | Console and API | Management network or SSH tunnel |
| TCP 80, 443 | Pingress HTTP/HTTPS | Application clients |
| Published application ports | Direct application access | Intended clients |
| TCP 2377 | Management communication | Participating servers |
| TCP/UDP 7946 | Discovery and communication | Participating servers |
| UDP 4789 | Cross-server application traffic | Participating servers |
Check both cloud security rules and host firewalls. Keep server communication ports restricted to participating machines. See Docker networking requirements.
For remote administration:
ssh -L 9000:127.0.0.1:9000 your-user@server.example.comKeep the session open and visit http://localhost:9000. The first application also needs port 8080 forwarded.
Data planning
Choose a storage server and backup procedure before creating a stateful application. A domain is optional for your first deployment. For IPv6, check addresses, routes, and firewalls, then read the networking FAQ.
Continue to installation.