Deploying Apache Airflow to Production
Run Airflow in production with Docker Compose, Helm on Kubernetes, or managed services. Covers monitoring, logging, security, and database backends.
46 posts · page 1 of 1
Run Airflow in production with Docker Compose, Helm on Kubernetes, or managed services. Covers monitoring, logging, security, and database backends.
A practical guide to deploying Astro projects across major platforms: adapter configuration, environment variables, build settings, and platform-specific gotchas.
Create your own GitHub Actions from scratch using JavaScript, Docker containers, and composite steps. Includes publishing to the marketplace.
Compare Docker and Podman on architecture, security, compatibility, and developer experience. Learn which container runtime fits your workflow in 2026.
Learn how to manage build artifacts in CI/CD pipelines including versioning, storage, promotion strategies, and cleanup policies.
Speed up Docker builds in CI/CD — multi-stage builds, layer caching, BuildKit, registry caching, and slim base images for faster deployments.
Learn how to use Docker Compose Watch to automatically sync file changes and rebuild containers during development. Faster feedback loops without manual restarts.
Learn how to use docker init to scaffold Dockerfiles, Compose files, and .dockerignore for your projects in seconds. Supports Node.js, Python, Go, Rust, and more.
Learn how to use Docker Scout to scan container images for CVEs, analyze software dependencies, and get actionable remediation advice directly from the CLI.
Practical techniques to reduce Docker image size by 90% or more. Covers multi-stage builds, Alpine and distroless bases, layer optimization, and dependency management.
Reduce Docker image size and build time with multi-stage builds, layer caching, distroless bases, and practical Dockerfile patterns.
Master BuildKit's cache mounts, secret mounts, SSH forwarding, and parallel builds to speed up Docker image creation and keep secrets out of layers.
Master ENTRYPOINT vs CMD, entrypoint scripts, signal handling, and init processes to build containers that start and stop reliably.
Configure Docker logging drivers to route container logs to files, syslog, or centralized systems. Includes monitoring with Prometheus and cAdvisor.
Use Trivy to find vulnerabilities in Docker images, Dockerfiles, and IaC before they reach production. Includes CI pipeline integration examples.
Use Docker tmpfs mounts to store sensitive or ephemeral data in memory, keeping it off disk and out of container layers entirely.
Deploy FastAPI to production with Docker, Gunicorn, Uvicorn workers, health checks, multi-stage builds, and best practices.
Production-ready Docker Compose patterns: override files, healthchecks, resource limits, logging, and secrets management.
Master Docker layer caching: instruction ordering, cache mounts, BuildKit inline cache, and CI registry caching for faster builds.
Go beyond basic multi-stage builds. Learn cache mounts, parallel stages, and distroless bases to shrink Docker images by 90%.
Write production-ready Dockerfiles: layer caching, multi-stage builds, .dockerignore, security hardening, slim base images, and patterns that keep builds fast and images small.
Manage persistent data in Docker — named volumes, bind mounts, tmpfs, backup strategies, and volume drivers for production.
How Docker multi-stage builds work, why they shrink images dramatically, and patterns for Python, Node, and Go services that need a clean runtime layer.
Why your Docker builds are slow and your images are bloated, and how to fix both with a tight build context and a thoughtful .dockerignore.
Build container images that run on both x86 and ARM with Docker Buildx, QEMU, and registry manifests, without doubling your CI complexity.
Network aliases let containers reach each other under multiple names. Learn how aliases work in Compose, when to use them, and the gotchas to avoid.
Use Docker Compose profiles to start only the services you need. Learn the syntax, common patterns, and pitfalls when mixing profiles with depends_on.
A pragmatic comparison of Docker Compose and Kubernetes covering scope, operational cost, and the signals that tell you it is time to graduate.
Healthchecks tell Docker if a container is alive. Restart policies tell it what to do when it is not. Together they keep your services running.
Disk full from Docker? Learn what fills up, which prune commands are safe, and how to automate cleanup so /var/lib/docker stops eating your machine.
Learn how Docker's layer cache really works and the ordering tricks that turn a 5-minute build into a 20-second one without sacrificing correctness.
A clear guide to Docker's three most common network drivers, when to pick each one, and how packets actually flow between containers in real deployments.
Harden Docker images and runtimes: non-root users, minimal bases, secret handling, capability drops, and image signing - without making developers miserable.
How Docker's overlay2 storage driver stacks read-only image layers under a writable container layer. Learn the directory anatomy and the copy-on-write behavior.
A practical comparison of Docker Swarm and Kubernetes. Understand their mental models, where each shines, common pitfalls, and how to choose for your team.
The practical differences between Docker volumes and bind mounts, when to pick each, and how to avoid the permission and performance traps.
A practical Docker Compose tutorial. Define services, networks, and volumes in one YAML file, then start and stop a full local stack with a single command.
Learn how Docker volumes keep your data alive between container restarts. Compare bind mounts, named volumes, and tmpfs, and see when to use each in real projects.
A practical guide to Docker networking: the default bridge, user-defined bridges, host networking, container DNS, and how port publishing actually works.
How to feed configuration into Docker containers without baking it into the image — ENV vs ARG, --env-file, Compose env, BuildKit secret mounts, and Docker Swarm secrets, with safe defaults.
Use Docker multi-stage builds to ship tiny production images — build with full toolchains, copy only the artifacts. Examples for Node and Go, with .dockerignore and size comparisons.
Learn Docker Compose by building a small two-service app — a web API and a Postgres database — defined in a single compose.yaml file and started with one command.
A practical deep dive into how Docker images are stored as layers, how the build cache works, and the real difference between bind mounts and named volumes.
A step-by-step setup guide for Docker on Windows, macOS, and Linux. Install the engine, verify it works, and run your first container in under fifteen minutes.
Learn how to write a Dockerfile from scratch. Understand each instruction, build a real image for a small Node application, and run it as a container.
A clear, no-hype introduction to Docker — what containers actually are, how they differ from virtual machines, and the vocabulary you need before installing anything.