The node:22 container doesn't have Docker installed. Running
on the host label executes directly on the VPS where Docker
is available.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Multi-stage Docker build produces an Nginx container serving the
static SPA. The CI workflow runs pnpm check on every push and
builds/pushes a Docker image on semver tags.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>