Single-container supervisord approach added unnecessary complexity. Two containers is simpler and more standard: - Dockerfile.backend: python:3.11-slim, uvicorn on port 8000 - Dockerfile.frontend: node build → nginx:alpine on port 80 - nginx.conf: proxy_pass restored to http://backend:8000 - docker-compose.yml: two services with depends_on - Removed combined Dockerfile and supervisord.conf Each container does one thing; logs are separate; either can be restarted independently. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
550 B
550 B