Phase 10Days 46-50

Docker, Compose & Deployment

Containers from scratch at the right moment—after the service is worth packaging

Phase Goal

Containerize, run, secure, and deploy a Go service with PostgreSQL and Redis.

Progress

Day 46: Containers, Images & Docker from Scratch

Day 47: Production Go Dockerfiles

Day 48: Docker Compose Development Stack

Day 49: CI, Registry & Deployment

Day 50: Mini Project — Deployed Watershed Operations Stack

Capstone
Deployed Watershed Operations Stack

Package and deploy the telemetry API and worker as separate non-root containers with migrations, health contracts, CI gates, immutable digests, backup restoration, and rollback evidence.

  • Small inspected images with explicit runtime identities
  • Healthy stack through cold start and dependency restart
  • Recorded deploy, restore, and rollback drills

Phase Complete!

After this phase, you'll be able to:

  • Process isolation mental model
  • Images, layers, registries, and containers
  • Dockerfile instructions and build context
  • Ports, filesystems, environment, and lifecycle commands
  • Multi-stage build with official Go image
  • go mod download cache ordering
  • CGO decisions and minimal runtime images
  • Non-root user, healthcheck, signals, and image inspection

You can apply Phase 10 skills in a finished, explainable Go project.