TL;DR – Click the button below, add your Anthropic key, and your personal Bytebot instance will be live in ~2 minutes.


Why Railway?

Railway provides a zero-ops PaaS experience with private networking and per-service logs that perfectly fits Bytebot’s multi-container architecture. The official template wires every service together using the latest container images pushed to the edge branch.


What Gets Deployed

ServiceContainer Image (edge)PortExposed?Purpose
bytebot-uighcr.io/bytebot-ai/bytebot-ui:edge9992YesNext.js web UI rendered to the world
bytebot-agentghcr.io/bytebot-ai/bytebot-agent:edge9991NoTask orchestration & LLM calls
bytebot-desktopghcr.io/bytebot-ai/bytebot-desktop:edge9990NoContainerised Ubuntu + XFCE desktop
postgrespostgres:14-alpine5432NoPersistence layer

All internal traffic flows through Railway’s private networking. Only bytebot-ui is assigned a public domain.


Step-by-Step Walk-through

1

1. Open the Template

Click the Deploy on Railway button above or visit https://railway.com/deploy/bytebot?referralCode=L9lKXQ.

2

2. Configure Environment

Railway automatically detects required variables. Paste your Anthropic API key into ANTHROPIC_API_KEY and keep other defaults.

3

3. Kick off the Deployment

Press Deploy. Railway will pull the pre-built images, create the Postgres database and link all services on a private network.

4

4. Launch Bytebot

When the build logs show “bytebot-ui: ready”, click the generated URL (e.g. https://bytebot-ui-prod.up.railway.app). You should see the task interface. Create a task and watch the desktop stream!
Tip: You can tail logs for each service from the Railway dashboard.

The first deploy downloads several container layers – expect ~2 minutes. Subsequent redeploys are much faster.


Private Networking & Security

Private networking ensures that the agent, desktop and database can communicate securely without exposing their ports to the internet.
Public exposure is limited to the UI which serves static assets and proxies WebSocket traffic.
Add authentication by placing the UI behind Railway’s built-in password protection or an external provider (e.g. Cloudflare Access, Auth0, OAuth proxy).
• You can also point a custom domain to the UI from the Railway dashboard and enable Cloudflare for WAF/CDN protection.


Customisation & Scaling

  1. Change images – Fork the repo, push your own images and edit the template’s Dockerfile references.
  2. Increase resources – Each service has an independent CPU/RAM slider in Railway. Bump up the desktop or agent if you plan heavy automations.

Troubleshooting

SymptomLikely CauseFix
Web UI shows “connecting…”Desktop not ready or private networking mis-configWait for bytebot-desktop container to finish starting, or restart service
Agent errors 401 AnthropicMissing/invalid API keyRe-enter ANTHROPIC_API_KEY in Railway variables
Slow desktop videoFree Railway plan throttlingUpgrade plan or reduce screen resolution in desktop settings

Next Steps

• Explore the REST APIs to script tasks programmatically.
• Join our Discord community for support and showcase your automations!