infra: docker compose dev + production Dockerfiles

- docker-compose.dev.yml: hot-reload dev stack (rete-watch + server :7357 + web :5173)
- docker-compose.yml: production stack
- packages/chess/Dockerfile + nginx.conf: chess web image
- packages/server/Dockerfile: server image
- Dockerfile.dev: shared dev base image (Bun + workspace deps preinstalled)
- .dockerignore: build context exclusions

Used by Playwright e2e tests (run via .sisyphus/scripts/run-pw.sh which connects to the running dev stack instead of spawning its own server).
This commit is contained in:
Joey Yakimowich-Payne 2026-04-27 13:44:17 -06:00
commit 9d408b5996
No known key found for this signature in database
7 changed files with 286 additions and 0 deletions

18
packages/chess/nginx.conf Normal file
View file

@ -0,0 +1,18 @@
server {
listen 80;
server_name _;
root /usr/share/nginx/html;
index index.html;
# SPA history fallback — react-router uses client-side routes.
location / {
try_files $uri $uri/ /index.html;
}
# Cache hashed Vite assets aggressively.
location /assets/ {
access_log off;
add_header Cache-Control "public, max-age=31536000, immutable";
try_files $uri =404;
}
}