Multi-stage build: Node 18 builds the Vite app, nginx serves
the static output. Nginx config proxies /api/ to the backend
container and handles SPA client-side routing with try_files.
Build args VITE_API_BASE_URL and VITE_APP_NAME are configurable
at build time via docker build --build-arg.
Made-with: Cursor