Container Terminology

This topic provides a very brief summary of the key terms you need to be familiar with when working with containers. For more information see The Docker Documentation site or Red Hat: Building, Running, and Managing Containers on Red Hat Enterprise Linux 8.

Container
A run-time instance of an image.

A container is usually completely isolated from the host environment, only able to access host files and ports if it has been configured to do so.

To run an image in a container you use the docker run or the podman run command.

Container engine
Software that performs tasks such as accepting user requests, pulling images, and running containers.
Development container
Development containers (or dev containers) are a Visual Studio Code feature that enables you to define a development environment within a container and then run your local source code within that container, using VS Code as the UI. This is currently only available on Ubuntu platforms.
Docker
A collection of products for creating and working with containers on both Linux and Windows.
Docker Hub
A cloud-based registry for working with Docker containers.

A key use for Docker Hub is hosting images, but it is also used for activities such as user authentication and the automation of image building. Anyone is free to publish images to Docker Hub. No checking or verification is carried out on individuals or organizations who submit images to Docker Hub.

Docker Store
A cloud-based resource that is similar to Docker Hub, but the images on Docker Store have been submitted by commercial entities who have been approved or certified by Docker.
Dockerfile
A text document containing the commands to build an image.

The commands you can specify in a Dockerfile range from the complex (such as specifying an existing image to use as a base) to the simple (such as copying files from one directory to another). For example, you can create a Dockerfile that uses the Ubuntu image as a base, but also installs the Apache web server, your application, and any required configuration options.

To build an image from a Dockerfile you use the docker build or the podman build command.

Image
A standalone, executable package that be run in a container.

An image is a binary that includes all of the requirements for running a single container, as well as metadata describing its needs and capabilities.

An image includes everything that is needed to run an application, including the application's executable code, any software on which the application depends, and any required configuration settings. You can build your own images (using a Dockerfile) or use images that have been built by others and then made available in a registry.

To build an image from a Dockerfile you use the docker build or the podman build command.

To run an image in a container you use the docker run or the podman run command.

Image format
The defined structure used by a container engine. Many major tools and container engines use an image format defined by the Open Container Initiative (OCI). Prior to this, however, different container engines used their own formats, reducing the portability of containers.
Open Container Initiative (OCI)
A Linux Foundation project to develop open standards and specifications for container solutions. Examples of tools for working with OCI containers are podman, buildah, and skopeo.
Registry
A service that stores and provides access to images.