To create an
overlay network on multiple hosts over swarm, following are required:
- a key-value store service: this is used for broadcasting hosts / swarm agents. It can be same kv store swarm used for discovery
- Run docker daemon with following parameters:
- cluster-store: where the store is
- cluster-advertise: what network interface to be advertised
All swarm-agents should have these options otherwise it will be likely get this error:
If using docker-compose, there is nothing need to do. As docker-compose will automatically create defaul network if:
- Single host: it will create a bridge
- Multiple host: it will create a overlay
Once docker-compose file finished, just run
docker-compose up -d which will create network correspondingly.
otherwise simply use following command at your
There is limitation for docker-compose build as it cannot find the target node to build the image.
The only way currently is to build on the node and tag it rather than on swarm.