************************ Docker Terms Review ************************ .. contents:: Table of Contents You've seen how to use a docker image directly using ``docker run`` and using a ``docker-compose.yml`` file. Both methods do the same thing, which is to create a container from a Docker image. Now, let's take a look at how to build a Docker image. Let's review some Docker terms before we continue. These terms are from |dotnet doc's terminology| page. See additional terms and examples on page |A Practical Introduction to Docker Container Terminology| provided by Redhat. Image *A package with all the dependencies and information needed to create a container.* A container represents a runtime for a single application, process, or service. It consists of the contents of a Docker image, a runtime environment, and a standard set of instructions. When scaling a service, you create multiple instances of a container from the same image. Or, a batch job can create multiple containers from the same image, passing different parameters to each instance. Container *A read-only instance of a Docker image.* A container represents the execution of a single application, process, or service. It consists of the contents of a Docker image, an execution environment, and a standard set of instructions. When scaling a service, you create multiple instances of a container from the same image. Volumes *A writable filesystem that the container can use.* Images are read-only but most programs need to write to the filesystem. Volumes add a writable layer on top of the container image so that programs can access a writable filesystem. Dockerfile *A text file that contains instructions for how to build a Docker image.* Build *The action of building a container image using the information in a Dockerfile.* Tag *A mark or label that you can apply to images for identification*. Repository (repo) *A catalogued or indexed collection of Docker images.* Registry *A service that provides access to repositories.* The default registry for most public images is |Docker Hub| (owned by Docker as an organization). Docker Hub A public registry of images. ``docker run``, ``docker-composer``, and ``Dockerfile`` use images from |Docker Hub|. For example, ``docker run`` downloads ``nextcloud`` from Docker Hub before it creates the container using this command: ``docker run -d -p 80:80 nextcloud``. Multi-arch image *An image designed for multi-architecture systems*. Compose *A command-line tool and YAML file format with metadata for defining and running multi-container applications*. .. |A Practical Introduction to Docker Container Terminology| raw:: html A Practical Introduction to Docker Container Terminology .. |dotnet doc's terminology| raw:: html dotnet doc's terminology .. |Docker Hub| raw:: html Docker Hub