It’s a rare case, suppose there is a
myapp swarm cluster with
myapp_mongo database without published port
and there is a need to run a command from some docker image with connection to this database.
docker stack deploy creates a non-attachable network, so
docker run --network myapp_default will output
Error response from daemon: Could not attach to network myapp_default: rpc error: code = PermissionDenied desc = network myapp_default not manually attachable.
A way to bypass it is to create a new attachable network and attach it to the service.
docker network create --driver overlay --attachable mongo_network docker service update --network-add mongo_network myapp_mongo docker run --rm --network mongo_network mongo:4.0.6 mongodump -h lsicloud_mongo ... docker service update --network-rm mongo_network lsicloud_mongo docker network rm mongo_network