Infrastructure
Articles in this topic
Caddy vs Nginx vs NPM
Caddy vs Nginx is a maintenance choice: a Caddyfile with automatic HTTPS, existing Nginx configs, or Nginx Proxy Manager's UI and database.
InfrastructureDocker volume permissions
Docker volume permissions follow the runtime UID/GID. Separate named volumes, read-only config, and Compose secrets, then prove recreate and restore.
Website engineeringDocker Compose production
Docker Compose production on one host: pin the image, hide the app port, keep data and secrets, and prove recreate and restore.
InfrastructureTroubleshoot 502 and 504
How to troubleshoot 502 and 504 by locating the gateway hop, then testing Docker DNS, ports, logs, and upstream timeout from that proxy.
Website engineeringPin Docker image digests
Pin a Docker image digest as repository:tag@sha256 so rebuilds and rollbacks pull the same artifact, including multi-platform indexes and runtime RepoDigests.
InfrastructureDocker Compose blue-green deploy
Run Docker Compose blue-green on one server: start a candidate project, prove it ready, switch Caddy, verify the public hostname, then drain the old instance.
InfrastructureAutomatic rollback for a failed deployment
Automatic rollback for a failed deployment restores the previous version or finishes a verified commit from candidate state, the traffic switch, business checks, and the on-disk receipt.
InfrastructureOneDev tutorial
A OneDev tutorial from Docker Compose and PostgreSQL through Caddy HTTPS, Git SSH, the first project, CI/CD, immutable image deploys, backup, restore, and recoverable upgrades.
InfrastructureHow to expose Docker ports
How to expose Docker ports without publishing every service: listen inside the container, bind 127.0.0.1 on the host, and verify UFW cannot hide a published port.
Website engineeringWhen to run database migrations
When to run database migrations: add compatible schema first, backfill after dual-writing code is live, and drop old columns only after old consumers exit.
Infrastructure