Docker CE (Community Edition)
Free, open-source release aimed at individual developers and small teams. It tracks the latest upstream feautres and is refreshed monthly.
# Ubuntu 22.04 example
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
Docker EE (Enterprise Edition)
Commercial offering with certified images, extended lifecycle support, and FIPS-compliant cryptography. Requires a license key.
# Add Mirantis repo (EE is now maintained by Mirantis)
curl -fsSL https://repos.mirantis.com/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/mirantis-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/mirantis-archive-keyring.gpg] https://repos.mirantis.com/ubuntu $(lsb_release -cs) stable-ee" | sudo tee /etc/apt/sources.list.d/mirantis.list
sudo apt update
sudo apt install -y docker-ee docker-ee-cli
Docker Desktop
Integrated development environment for macOS and Windows that bundles Engine, CLI, Kubernetes, and Dev Environments. Installation is GUI-driven:
# macOS (Homebrew)
brew install --cask docker
# Windows (PowerShell)
winget install Docker.DockerDesktop
Docker Compose
CLI plugin that consumes a declarative YAML manifest to spin up multi-service stacks.
# compose.yml
version: "3.9"
services:
api:
build: .
ports: ["5000:5000"]
depends_on: [cache]
cache:
image: redis:7-alpine
volumes: ["redis-data:/data"]
volumes:
redis-data:
Launch the stack:
docker compose up -d
Deployment Timeline
gantt
title Containerized App Roll-out
dateFormat YYYY-MM-DD
section Infra
Provision cluster :2024-06-01, 1d
Install Ingress :2024-06-02, 1d
section Backend
Image build :2024-06-03, 2d
Security scan :2024-06-05, 1d
Deploy to staging :2024-06-06, 1d
section Frontend
Bundle assets :2024-06-03, 2d
E2E tests :2024-06-05, 1d
Deploy to staging :2024-06-06, 1d
section Release
Production rollout :2024-06-08, 1d
Flow: Local Build to Production
flowchart TD
A[Developer push] --> B[CI pipeline]
B --> C{Tests pass?}
C -- No --> D[Fix & retry]
C -- Yes --> E[Build image]
E --> F[Push to registry]
F --> G[Deploy to staging]
G --> H{QA sign-off?}
H -- No --> D
H -- Yes --> I[Deploy to prod]