Quick checklist (new users)
- Click Deploy on Railway (below).
- Add a Volume mounted at
/data. - Set the required Variables (at least
OPENCLAW_GATEWAY_PORTandOPENCLAW_GATEWAY_TOKEN). - Enable HTTP Proxy on port
8080. - Open
https://<your-railway-domain>/openclawand connect using yourOPENCLAW_GATEWAY_TOKEN.
One-click deploy
Deploy on Railway After deploy, find your public URL in Railway → your service → Settings → Domains. Railway will either:- give you a generated domain (often
https://<something>.up.railway.app), or - use your custom domain if you attached one.
https://<your-railway-domain>/openclaw— Control UI
What you get
- Hosted OpenClaw Gateway + Control UI
- Persistent storage via Railway Volume (
/data) so config/credentials/workspace survive redeploys
Required Railway settings
Public Networking
Enable HTTP Proxy for the service.- Port:
8080
Volume (required)
Attach a volume mounted at:/data
Variables
Set these variables on the service:OPENCLAW_GATEWAY_PORT=8080(required — must match the port in Public Networking)OPENCLAW_GATEWAY_TOKEN(required; treat as an admin secret)OPENCLAW_STATE_DIR=/data/.openclaw(recommended)OPENCLAW_WORKSPACE_DIR=/data/workspace(recommended)
Connect a channel
Use the Control UI at/openclaw or run openclaw onboard via Railway’s shell for channel setup instructions:
- Telegram (fastest — just a bot token)
- Discord
- All channels
Backups & migration
Export your configuration and workspace:Next steps
- Set up messaging channels: Channels
- Configure the Gateway: Gateway configuration
- Keep OpenClaw up to date: Updating