13 days ago
I have a Python service where Settings → Build → Builder is set to Dockerfile, with a Dockerfile Path pointing to a valid Dockerfile in the repo — confirmed saved and visible in the dashboard. However, every deployment still builds with Railpack and fails with "No start command detected." The deployment's own GraphQL manifest reports build.builder: "RAILPACK" and build.dockerfilePath: null — i.e. the saved dashboard setting isn't reaching the actual build.
What I've tried, all with the identical result:
- Dashboard Custom Start Command field
- railway.json config-as-code (with a Config File Path set), tried with deploy.startCommand, then build.builder/build.dockerfilePath
- A native railpack.json at the build root
- Scoping the service's Root Directory to the subfolder containing the app
- railway environment edit --service-config build.builder DOCKERFILE via CLI — returns {"committed":false,"message":"No changes to apply"} even though railway environment config --json shows the builder is still RAILPACK at that moment
- Deleted and fully recreated the service from scratch — same result on the brand-new service
- Re-set the Builder via an incognito browser session in case of a dashboard caching bug — same result
This is a monorepo (multiple services from one repo, shared root directory), if that's relevant. Has anyone seen the dashboard's Builder selection silently fail to persist like this, and is there a known workaround?
1 Replies
13 days ago
Your Builder, Dockerfile path, start command, and several other edits are currently staged but have not been applied yet, so every deploy still runs against the old committed config (Railpack, no Dockerfile). You should see a banner on the project canvas showing 7 pending changes. Click "Deploy" in that banner to commit them, and the next build will use your Dockerfile.
Status changed to Awaiting User Response Railway • 13 days ago
Status changed to Solved mikeyjudd • 13 days ago