Skip to main content

Glossary · devops

Docker

Definition

Docker is a platform that packages an app and its dependencies into an isolated 'container'. It solves 'works on my machine' — the same container runs identically on laptop, server, cloud. It's been DevOps's core infrastructure since 2013.

Published: 2026-05-05Updated: 2026-05-05

Detailed explanation

Container vs VM: VM bundles a full OS (GBs, minutes to boot); container shares the OS kernel + only app + lib (MBs, seconds to boot). 100 containers per server vs 5-10 VMs.

Components: Dockerfile (build instructions), Image (runnable package), Container (running instance), Registry (Docker Hub, AWS ECR, GitHub Container Registry — image storage).

Compose + Kubernetes: Docker Compose for small dev/prod stacks (docker-compose.yml). Kubernetes for 10+ container production orchestration. ECS (AWS) + Cloud Run (Google) are managed alternatives.

2026 trends: distroless images (reduced attack surface), multi-stage builds (smaller images), BuildKit (cache + parallel), Buildpacks (Dockerfile-free builds).

Use cases

Standardize developer environments

CI/CD pipeline (test + build + deploy)

Microservice distribution

ML/AI inference deployment

Multi-region production

Pros

  • +Solves 'works on my machine'
  • +Fast boot (seconds)
  • +Resource-efficient (100 containers/server)
  • +Standard format (Docker Hub ecosystem)

Cons

  • Networking + volume complexity
  • Docker Desktop license (enterprise)
  • Image security (CVE scanning required)
  • Kubernetes adds learning curve in production

Related terms

KubernetesDevOpsCI/CDMicroservice

Related services

Planning a project around Docker?

In a 30-minute discovery call we share a written architecture + cost + team recommendation tailored to your project.

Start a discovery call