The people over at Ekino have engineered their own workflow for having multiple environments using Docker Swarm. Presented in this article is the use case of two static pools of machines, within each are multiple environments that can be dynamically shifted. ie. The static QA pool of servers contains the integration, validation and performance testing environments. At the flick of a switch the operators are able to allocate more servers to the performance environment for better balancing of workload.

The authors are also practicing immutable infrastructure, with these environments. From within their Jenkins continuous integration server, they’re able to wipe and freshly deploy an entire environment in three minutes.