...
Production swarm deployment is typically done across multiple physical or virtual machines or cloud instances1. The tutorial https://docs.docker.com/engine/swarm/swarm-tutorial/ requires three Linux hosts which communicate over a network. In a production environment, it is only meaningful to run swarm across multiple Docker nodes. A Docker node is an instance of the Docker engine.
Apache Mesos
Apache Mesos is designed for data center management, and installing complex applications such as Kubernetes on top of data center resources.
...