Dead Container Took Down Prod
A real postmortem: how a forgotten survey-tool container, an uncapped Docker log driver, and rootless networking combined to kill prod for a Monday morning.
All the articles with the tag "docker".
A real postmortem: how a forgotten survey-tool container, an uncapped Docker log driver, and rootless networking combined to kill prod for a Monday morning.
Run Gemma 4 or Qwen3-Coder locally via Ollama or llama.cpp in Docker, then delegate mechanical coding tasks to it while Claude handles the thinking. Free tokens, zero leakage.
Expose Docker's Unix socket over TCP so remote tools and dashboards can connect — daemon.json config for Linux and Windows.
Alpine gives you a shell and apk; Distroless gives you nothing but the app. Compare attack surface, image size, and multi-stage build complexity.
Appwrite is an open-source Firebase alternative you can self-host — databases, auth, storage, and functions without vendor lock-in.
Three ways to set env vars in Docker Compose. Only one wins. Here's which and why it breaks your configs.
ENV bakes secrets into layers visible in docker history. Use BuildKit --secret, runtime vars, or .env files.
Build ARM64 and AMD64 images from one machine using Docker buildx. Setup, syntax, pushing multi-arch manifests, and when you actually need it.
The docker compose commands you actually use daily — up, down, logs, exec, pull, and the flags that make them way more useful.
Network aliases give containers multiple DNS names. Perfect for blue-green deploys and service discovery patterns.
Access services on the host machine from inside a Docker container using host-gateway or host.docker.internal — no hardcoded IPs.
Learn how to set Docker resource limits for memory, CPU, swap, and PIDs. Practical guide with real-world sizing examples, OOM killer behavior, and cgroups explained.