Containers
History
- A Brief History of Containers: From the 1970s Till Now - Aqua Security (2020)
- It's Here: Docker 1.0 - Julien Barbier (2014)
- Deployment (source):
Definitions
- Docker
A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another. A container image is a lightweight, standalone, executable package of software that includes everything needed to run an application: code, runtime, system tools, system libraries and settings.
- Microsoft
A container, or software container, is a standalone package of software that bundles together application code with the operating system libraries and dependencies required to run it. It can consistently run in any computing environment—whether on a developer’s laptop, a test server, or a production cloud service. Because it’s lightweight and portable, a container can be efficiently deployed, scaled, and managed on virtually any type of infrastructure, including hybrid and multicloud platforms.
- Red Hat
Containerization is the packaging together of software code with all it's necessary components like libraries, frameworks, and other dependencies so that they are isolated in their own container
— redhat.com/topics/cloud-native-apps/what-is-containerization
Image build practices
- chroot
- Container Performance Analysis at DockerCon 2017, by Brendan Gregg
- Best Practices on How to Build Container Images
- Top 20 Dockerfile Best Practices - Álvaro Iradier (2021)
- 3 simple tricks for smaller Docker images - Daniele Polencic (2019)
- Best practices for building containers
- Buildpacks vs Jib vs Dockerfile: Comparing containerization methods James Ward (2020)
- GoogleContainerTools/distroless
Container runtimes
- Docker
- containerd
- cri-o
- podman
Container registries
Container GUI
- Docker Desktop
- Rancher Desktop
- Podman Desktop
Readings
- Containers vs. Pods - Taking a Deeper Look - October 28, 2021