Skip to main content

Choose Your Deployment Method

Bytebot can be deployed in several ways depending on your needs:
  • Railway (Easiest)
  • Docker Compose
  • Kubernetes/Helm
  • Desktop Only

☁️ One-click Deploy on Railway

Deploy on Railway
1

Visit the Template

Click the Deploy Now button in the Bytebot template on Railway.
2

Add Anthropic Key

Enter either your ANTHROPIC_API_KEY, OPENAI_API_KEY, or GEMINI_API_KEY for the bytebot-agent resource.
3

Deploy & Launch

Hit Deploy. Railway will build the stack, wire the services together via private networking and output a public URL for the UI. Your agent should be ready within a couple of minutes!
Need more details? See the full Railway deployment guide.

Managing Your Agent

View Logs

Monitor what your agent is doing:
# All services docker-compose -f docker/docker-compose.yml logs -f  # Just the agent docker-compose -f docker/docker-compose.yml logs -f bytebot-agent 

Stop Services

docker-compose -f docker/docker-compose.yml down 

Update to Latest

docker-compose -f docker/docker-compose.yml pull docker-compose -f docker/docker-compose.yml up -d 

Reset Everything

Remove all data and start fresh:
docker-compose -f docker/docker-compose.yml down -v 

Quick API Examples

Create a Task via API

# Simple task curl -X POST http://localhost:9991/tasks \  -H "Content-Type: application/json" \  -d '{  "description": "Search for flights from NYC to London next month",  "priority": "MEDIUM"  }'  # Task with file upload curl -X POST http://localhost:9991/tasks \  -F "description=Read this contract and summarize the key terms" \  -F "priority=HIGH" \  -F "[email protected]" 

Direct Desktop Control

# Take a screenshot curl -X POST http://localhost:9990/computer-use \  -H "Content-Type: application/json" \  -d '{"action": "screenshot"}'  # Type text curl -X POST http://localhost:9990/computer-use \  -H "Content-Type: application/json" \  -d '{"action": "type_text", "text": "Hello, Bytebot!"}' 

Troubleshooting

Check Docker is running and you have enough resources:
docker info docker-compose -f docker/docker-compose.yml logs  
Ensure all services are running:
docker-compose -f docker/docker-compose.yml ps  
All services should show as β€œUp”.
Check your API key is set correctly:
cat docker/.env docker-compose -f docker/docker-compose.yml logs bytebot-agent  
Ensure you’re using a valid API key from Anthropic, OpenAI, or Google.

πŸ“š Next Steps

πŸ”§ Configuration Options

Environment Variables

# Choose one AI provider: ANTHROPIC_API_KEY=sk-ant-... # For Claude models OPENAI_API_KEY=sk-... # For GPT models  GEMINI_API_KEY=... # For Gemini models  # Optional: Use specific models ANTHROPIC_MODEL=claude-3-5-sonnet-20241022 # Default OPENAI_MODEL=gpt-4o GEMINI_MODEL=gemini-1.5-flash 
# Change default ports if needed # Edit docker-compose.yml ports section: # bytebot-ui: # ports: # - "8080:9992" # Change 8080 to your desired port 
# To use multiple LLM providers, use the proxy setup: docker-compose -f docker/docker-compose.proxy.yml up -d  # This includes a pre-configured LiteLLM proxy 
Need help? Join our Discord community for support and to share what you’re building!
⌘I