Images vs Containers
to use a Java metaphor: if an image is a class, then a container is an instance of that class - a runtime object
- image includes everything needed to run an application (e.g. the code or binary, runtimes, dependencies, and any other filesystem objects required)
- container is nothing but a running image, with some added encapsulation features applied to it in order to keep it isolated from the host and from other containers. One of the most important aspects of container isolation is that each container interacts with its own, private filesystem; this filesystem is provided by a Docker image. see Virtual Machines vs Containers vs Emulators. Is an isolated process
Container Runtimes vs Container Engines
|
Thing |
Description |
Examples |
|---|---|---|
|
Container Runtime |
are used by Container Engines to do the low-level container and image management stuffs | |
|
Container Engine |
used by end-users to manage images and containers |
Orchestrating Engine (COE)
Container schedulers manage containers across a number of machines, allocating workloads appropriately.