The Portainer host keeps failing on `npm ci` inside the build stage (both Alpine+libc6-compat and Debian slim exited 1 without ever surfacing the real error to us). For a dev showcase this isn't worth chasing — the dev machine is the source of truth for the built output anyway. - Dockerfile: drop the Node build stage. Image is just nginx:1.27.3-alpine with /dist copied in. No npm inside the container. - docker-compose.yml: drop the production hardening (read_only, tmpfs, security_opt, resource caps) and the container_name. Dev-only, don't inhibit things. - .gitignore / .dockerignore: stop ignoring dist/ — it's committed now. - README: document the `npm run build && commit && push` release flow and note what to reinstate when this graduates to real production. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
36 lines
613 B
Plaintext
36 lines
613 B
Plaintext
# Keep the build context small and reproducible.
|
|
.git
|
|
.github
|
|
.gitignore
|
|
.DS_Store
|
|
|
|
# Local development artefacts
|
|
node_modules
|
|
# dist/ is intentionally shipped — the container serves it directly.
|
|
dist-ssr
|
|
.vite
|
|
coverage
|
|
*.log
|
|
|
|
# Secrets & env (always excluded; only .env.example is shipped to clients, not the image)
|
|
.env
|
|
.env.*
|
|
!.env.example
|
|
|
|
# Python scripts/ tooling (rembg etc) — not part of the web image
|
|
scripts/.venv
|
|
__pycache__
|
|
|
|
# Editor / IDE
|
|
.vscode
|
|
.idea
|
|
|
|
# Claude Code artefacts
|
|
.claude
|
|
CLAUDE.md
|
|
CLAUDE.local.md
|
|
.claudeignore
|
|
|
|
# Docs / meta that don't need to ship in the build context
|
|
README.md
|