Railway
Deploy Composery on Railway as an image service with a volume at /data.
Railway provides the public HTTPS edge and a persistent volume, so Composery runs as a
single service with the volume mounted at /data. No Caddy.
Railway provisions volumes and the image source at the service level (in the dashboard or a
published template), not from a repo file. railway.json only carries the deploy settings
Railway reads as config-as-code (health check, restart policy, single replica).
Recipe: templates/railway
(railway.json).
Deploy from the image
- New Project -> Deploy from Docker Image and enter
ghcr.io/sloikodavid/composery:latest. - Right-click the service -> Attach Volume, mount path
/data. - Set service variables:
PORT=8080(register the password in the browser, or setCOMPOSERY_PASSWORD/COMPOSERY_HASHED_PASSWORD). - Settings -> Networking -> Generate Domain, target port
8080. - Open
/ide/on the generated domain.
Notes
- Run a single replica;
persistenceis a single writer for one/datavolume. - Railway volumes are attached at runtime - after first boot, confirm persistence with
composery persistence status --jsonin the service shell.