Active-standby cluster

I have a set of Docker services. There are two nodes (active and standby). Equal number of instances of each service should be run on each node. All incoming requests should be forwarded to active node. In case if active node is unavailable, all incoming requests should be redirected to standby node.

Is there a way to:

  1. run the equal number of instances of each service? I found there are 3 swarm strategies - spread, binpack, random, but they don’t fit.
  2. configure failover strategy for docker load balancer? Or is the only way to deploy and configure external load balancer (nginx)?