Environments and infrastructure
So far, we have always used one Docker host for everything and treated it as the virtualization of endless resources where we can deploy everything. Obviously, the Docker host can actually be a cluster of machines and we will show how to create it using Docker Swarm in the next chapters. However, even if the Docker host were unlimited in terms of resources, we still need to think about the underlying infrastructure for at least two reasons:
- Physical location of the machines matters
- No testing should be done on the production physical machines
Taking these facts into consideration, in this section, we will discuss different types of environment, their role in the Continuous Delivery process, and infrastructure security aspects.
Types of environment
There are four most common environment types: production, staging, QA (testing), and development. Let's discuss each of them and its infrastructure.
Production
Production is the environment that is used by the end user...