Coolify runs compose with --project-directory=repo-root, so context:.. resolved above the repo and the build context/Dockerfiles weren't found. Root compose + context:. matches the Dockerfiles' assumption (context = repo root).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Container-ready via docker/ compose (frontend nginx + backend Node). Compose adjusted for Coolify on the prod server: frontend uses expose:80 (no host binding — host 8080 is taken by the Coolify proxy; Traefik routes visigine.de), backend ALLOWED_ORIGINS=https://visigine.de. Secrets stay in server/.env (git-ignored); see server/.env.example.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>