From Zero to Production: Deploying better-openclaw on a VPS
A complete guide to deploying a better-openclaw-generated stack on a VPS, from server provisioning to DNS, SSL, monitoring, and ongoing maintenance.
Deploying an AI stack to a VPS gives you dedicated resources, a public IP, and full control — without the complexity of Kubernetes. This guide walks you through the entire process: provisioning a server, generating your stack, configuring DNS and SSL, and setting up monitoring for production reliability.
Step 1: Provision Your Server
Choose a VPS with at least 4 vCPUs, 8 GB RAM, and 80 GB SSD. Providers like Hetzner, DigitalOcean, and Vultr offer this for $20–$40/month. For GPU-accelerated LLM inference, look for GPU cloud providers like Lambda Labs or Vast.ai. Install Ubuntu 24.04 LTS, Docker, and Docker Compose.
Step 2: Generate Your Stack
SSH into your server and run npx create-better-openclaw --preset ai-playground --proxy caddy --domain yourdomain.com --yes. This generates a complete stack with Ollama, Open WebUI, Qdrant, LiteLLM, Redis, Caddy (with automatic SSL), and monitoring. The tool detects your server's available resources and adjusts configurations accordingly.
Step 3: DNS & SSL
Point your domain's A record to your VPS IP address. Caddy handles SSL certificate acquisition and renewal automatically via Let's Encrypt. For subdomains (e.g., chat.yourdomain.com, n8n.yourdomain.com), the generated Caddyfile includes routes for each service. SSL certificates are obtained within seconds of DNS propagation.
Step 4: Launch & Monitor
Run docker compose up -d and monitor the startup with docker compose logs -f. Once all services are healthy, access your stack via your domain. Set up Uptime Kuma to monitor service availability and configure alerts. Use Watchtower for automatic container updates, and schedule regular database backups with a simple cron job.
Ongoing Maintenance
Keep your stack updated by periodically regenerating with better-openclaw's latest version: npx create-better-openclaw@latest. The tool uses config migrations to preserve your customizations while updating service versions and adding new features. Review Grafana dashboards weekly to catch resource bottlenecks before they impact performance.