Multi-host container communication w/o VirtualBox or other VMs

We have a cluster of Linux (SELinux 7.5, specifically) nodes which we would like to run Docker containers on and providing services such that the containers (one container running per physical host) can communicate with one another over TCP/IP.

From what I have read, it seems like one needs to have installed and use VirtualBox or some other VM. That is something we are not permitted to implement on the cluster. Is there a way to implement a cluster of Docker containers (a swarm, its called?) without having to implement a VM like VirtualBox? Thanks