Add Docker infrastructure with caddy-docker-proxy

Multi-stage Dockerfile (node build → caddy:2-alpine production, node dev).
Compose base + dev override for prod/dev switching via .env ENVIRONMENT flag.
Makefile targets: build, up, down, restart, logs, dev, prod, clean, rebuild.
Caddyfile serves static Astro output with caching and compression.
This commit is contained in:
Ryan Malloy 2026-01-28 14:07:02 -07:00
parent 364b6602c4
commit 162d485c31
6 changed files with 160 additions and 0 deletions

16
docker-compose.yml Normal file
View file

@ -0,0 +1,16 @@
services:
docs:
build:
context: .
target: production
dockerfile: Dockerfile
restart: unless-stopped
networks:
- caddy
labels:
caddy: ${DOMAIN}
caddy.reverse_proxy: "{{upstreams 80}}"
networks:
caddy:
external: true