Containers
Containers are a lightweight, standalone, executable package of software that includes everything needed to run an application: code, runtime, system tools, system libraries, and settings. Containers isolate software from its environment and ensure that it works uniformly despite differences for instance between development and staging.
Containers are a form of operating system virtualization. A single container might be used to run anything from a small microservice or software process to a larger application. Containers are designed to be portable, making it easy to move them between environments, such as from a developer's laptop to a test environment, from a staging environment into production, or from a physical machine to a virtual machine in the cloud.
Containers are a key component of modern software development and deployment practices, such as DevOps and continuous integration and delivery (CI/CD). They provide a consistent, reliable environment for applications to run in, making it easier to build, test, and deploy software.
This section covers the basics of containers, including popular containerization tools like Docker and Podman, as well as container orchestration platforms like Kubernetes.