What is Docker?

docker

Updated August 29, 2026

Docker packages an application and its user-space dependencies into an image that can run as a container. The container shares the host kernel; it is not a full virtual machine.

An image is an immutable, layered template. A container is a runnable instance of an image. A registry stores and distributes images, and the Docker Engine/daemon manages local images, containers, networks, and volumes. A Dockerfile describes how to build an image; Compose describes a multi-container application.

Try the basic workflow with an image from a trusted registry:

docker pull hello-world
docker run --rm hello-world

Containers improve repeatability, but they do not automatically make software secure or portable. Images still contain vulnerable dependencies, containers still need resource limits, and persistent data belongs in volumes or an external service rather than the writable container layer. Choose Docker when packaging and isolating a process helps; it is not a replacement for every deployment or security boundary.

Sources

related.

Ruslan Osipov

Ruslan Osipov

About the author