Docker / build-and-push (push) Successful in 1m17s
Multi-stage build (node build -> nginx:alpine serve), docker-compose with a configurable HOST_PORT (default 47174, an unusual port left free for nginx proxy manager to front later), and a Gitea Actions workflow that builds/pushes the image on push to main. Verified: image builds, container serves the app and all art assets on port 47174.