One of my purposes for 2021 is to simplify Docker for beginners.

Let's start with some definitions:

🏠Docker host
⚙️Docker engine
❓ Docker client
📝Dockerfile
📑Docker Image
🐳Docker Container
🐙Docker Compose
🪣 Docker Registry
🐳🐳🐳Docker Swarm

Definitions Below 👇

🏠Docker (Active) Host

A computer with Docker installed and the daemon running.

It can process Docker and non-Docker workloads.
⚙️Docker Engine

A Client-Server application. It has 3 components:

- "daemon process": A server that is a type of long-running program.

- "Rest API": to specify interfaces that programs can use to talk and interact with the daemon.

- "CLI": A command-line interface client
❓Docker Client

It sends commands to dockerd, using the Docker API.
It can communicate with multiple daemons.
📝Dockerfile

It's a text document that contains all the commands a user could call on the command line to assemble an image.
📑Docker Image

It's a file, composed of multiple layers, often based on another image, that contains everything you need to run your application.

Containers run on top of existing images.
🐳Docker Container

It's a standard unit of software that packages up code and dependencies, running as a process on the host machine.
🐙Docker Compose

It's a tool for defining and running multi-container Docker applications, called services.

You use a YAML file to configure the services, that can be created/started/stopped with a single command.

It works well in development, testing, and production.
🪣 Docker registry

It's a stateless server-side application to store Docker images. The images can be pulled or pushed.

It can be public/private.

Docker Hub is a public Docker registry.
🐳🐳🐳Docker Swarm

It's used to manage multiple machines where Docker is installed.

It allows you to manage multiple containers deployed across multiple host machines (nodes).

More from Internet

You May Also Like