If I am hearing you correctly, you are wanting an external Nginx server to load balance to different domains in a swarm. If you have each domain on a different external facing port on the swarm and on your external Nginx server point your domains to the correct port in the swarm, the swarm will auto load balance the incoming requests to the scaled containers for that port. On Nginx, you can also load balance your entry points for a port/domain to different nodes on the swarm for high availability.
If the Nginx server is internal to the swarm, it can reverse proxy to container name, and again the swarm auto load balances as scaled.