a5baef73d9
- backend: appuser UID/GID 1001 via useradd, USER directive, --chown on COPY - frontend builder: appuser UID/GID 1001 via adduser, USER directive - frontend prod: switch to nginxinc/nginx-unprivileged:alpine (nginx UID 101), listen on 8080 - docker-compose: explicit user: for all services (70:70 db, 1001:1001 backend/frontend-dev, 101:101 frontend-prod) - nginx.conf: listen 8080 to match unprivileged image Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
25 lines
602 B
YAML
25 lines
602 B
YAML
# Development overrides — hot reload for backend and frontend
|
|
# Usage: docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build
|
|
|
|
services:
|
|
|
|
backend:
|
|
user: "1001:1001"
|
|
command: sh scripts/start_dev.sh
|
|
volumes:
|
|
- ./backend:/app
|
|
|
|
frontend:
|
|
build:
|
|
context: ./frontend
|
|
target: builder # stop at the Node stage, skip nginx
|
|
user: "1001:1001"
|
|
command: npm run dev -- --host 0.0.0.0
|
|
ports:
|
|
- "5173:5173"
|
|
environment:
|
|
VITE_API_TARGET: http://backend:8000
|
|
volumes:
|
|
- ./frontend:/app
|
|
- /app/node_modules
|