Container Pattern

Definition

Design approach packaging applications with dependencies into lightweight, portable containers that run consistently across environments and clouds.

Use Cases

Provider Equivalents

Frequently Asked Questions

What's the difference between the Container Pattern and virtual machines (VMs)?
VMs virtualize hardware and run a full guest operating system per VM. Containers share the host OS kernel and package only the app and its dependencies. This usually makes containers start faster and use fewer resources, while VMs can provide stronger isolation boundaries and support different OS kernels on the same host.
When should I use the Container Pattern?
Use it when you need consistent behavior across developer laptops, CI, staging, and production; when you want repeatable deployments; when you run microservices; or when you need to scale stateless services horizontally. It’s especially useful if you have dependency conflicts between apps or want to standardize how teams build and ship software.
How much does the Container Pattern cost?
Containers themselves are not a separate billable item, but running them costs money for compute, storage, and networking. Costs depend on whether you use: (1) managed Kubernetes (pay for worker nodes/VMs, plus any control-plane fees depending on provider), (2) serverless containers (pay per vCPU/memory time and requests), and (3) supporting services like container registries, load balancers, logging/monitoring, and data egress. The biggest cost drivers are CPU/memory sizing, autoscaling behavior, and traffic (especially outbound).

Category: containers

Difficulty: intermediate

Related Terms

See Also