Currently all ports are statically defined - the container ports as well as the host ports. That limits scheduling in Marathon.
try IP per Container / Virtual IPs instead of DNS service discovery and use BRIDGE networking (which does not allow DNS service discovery in the current DC/OS version).
read SRV DNS entries in Java ServiceDiscovery to identify ports
Currently all ports are statically defined - the container ports as well as the host ports. That limits scheduling in Marathon.