[Avg. reading time: 6 minutes]

Docker Basics

At a conceptual level, Docker is built around two core abstractions:

  • Images – what you build
  • Containers – what you run

Everything else in Docker exists to build, store, distribute, and execute these two artifacts.

Images

  • An image is an immutable, layered filesystem snapshot
  • Built from a Dockerfile
  • Each instruction creates a new read-only layer
  • Images are content-addressed via SHA256 digests

Image is a versioned, layered blueprint

Key properties:

  • Immutable
  • Reusable
  • Cached aggressively
  • Portable across environments

Container

A container is a running instance of an image

  • A writable layer on top of image layers
  • Namespaces for isolation (PID, USER)
  • Containers are processes, not virtual machines
  • When the main process exits, the container stops

Image vs Container

AspectImageContainer
NatureStaticDynamic
MutabilityImmutableMutable
LifecycleBuild-timeRuntime
RoleArtifactInstance

Where Do Images Come From?

Docker Hub

https://hub.docker.com/

  • Default public container registry
  • Hosts official and community images
  • Supports tags, digests, vulnerability scans
  • Docker Hub is default, not mandatory

Apart from Docker Hub, there are few other common registries

AWS ECR

GCP Artifact Registry

Azure Container Registry

GitHub Container Registry

Private / On-Prem Registries

Harbor

JFrog Artifactory

Enterprises widely use on-prem or private registries. JFrog Artifactory is extremely common in regulated environments.

#docker #container #repositories #hubVer 6.0.18

Last change: 2026-03-03