The new swarm mode is great when it works, but it is monster to debug. It takes care of so many things that it is nearly impossible to pin point what component isn't working.
The issues I have encountered with swarm mode:
* Some containers could not use hostnames to connect to other containers.
* Sometimes, in a 3 node swarm, containers on A could be reached from B, but not from C.
* After every reboot these issues could be fixed or start occurring.
* It automatically adds firewall rules for every service you port map to be exposed to the internet, without warning
In the end I switched to nomad, it isn't perfect either but at least it is consistent.