Add Docker container + deploy setup

Add Docker container + deploy setup

#18 in tonybierman/dx-blog — merged 2026-05-30

Summary

Containerize dx-blog and add a deploy story for local development and deployment.

  • Dockerfile — multi-stage: builder runs dx bundle --platform web --fullstack --release (compiles the wasm client, bakes Tailwind, links the axum server), runtime is debian-slim running the server as non-root UID/GID 1000 so bind-mounted volumes stay host-owned.
  • docker-compose.yml — the single committed compose file. ./data (SQLite) + ./uploads volumes, published on :8888, with SITE_URL / DX_SEED / DX_SEED_ADMIN_PASSWORD / DX_AUTH_BOOTSTRAP_ADMIN_EMAIL / DX_AUTH_SKIP_EMAIL_VERIFICATION passed through from the shell/.env. UID/GID build args. Per-host deltas go in a gitignored docker-compose.override.yml.
  • .dockerignore — keeps target/, data/, uploads/, the generated tailwind.css, and the shipped image tarball out of the build context.
  • docs/docker.md + README link — build, run, volumes, config, and first-run seeding.

🤖 Generated with Claude Code

Last updated 2026-05-31