Files
bot/docs/install/digitalocean.md
zooqueen 071e3f1082 rebrand: openclaw -> hanzo bot across entire codebase
Automated rebrand of all openclaw references to hanzo bot:
- Package: openclaw -> @hanzo/bot
- Binary: openclaw -> hanzo-bot
- Config: ~/.openclaw -> ~/.hanzo/bot
- Docker: ghcr.io/hanzoai/bot
- Env vars: OPENCLAW_* -> BOT_*
- Bundle IDs: ai.hanzo.bot.*
- Product name: Hanzo Bot
2026-03-19 13:52:32 -07:00

3.4 KiB

summary, read_when, title
summary read_when title
Host Hanzo Bot on a DigitalOcean Droplet
Setting up Hanzo Bot on DigitalOcean
Looking for a simple paid VPS for Hanzo Bot
DigitalOcean

DigitalOcean

Run a persistent Hanzo Bot Gateway on a DigitalOcean Droplet.

Prerequisites

  • DigitalOcean account (signup)
  • SSH key pair (or willingness to use password auth)
  • About 20 minutes

Setup

Use a clean base image (Ubuntu 24.04 LTS). Avoid third-party Marketplace 1-click images unless you have reviewed their startup scripts and firewall defaults.
1. Log into [DigitalOcean](https://cloud.digitalocean.com/).
2. Click **Create > Droplets**.
3. Choose:
   - **Region:** Closest to you
   - **Image:** Ubuntu 24.04 LTS
   - **Size:** Basic, Regular, 1 vCPU / 1 GB RAM / 25 GB SSD
   - **Authentication:** SSH key (recommended) or password
4. Click **Create Droplet** and note the IP address.
```bash ssh root@YOUR_DROPLET_IP
apt update && apt upgrade -y

# Install Node.js 24
curl -fsSL https://deb.nodesource.com/setup_24.x | bash -
apt install -y nodejs

# Install Hanzo Bot
curl -fsSL https://hanzo.bot/install.sh | bash
hanzo-bot --version
```
```bash hanzo-bot onboard --install-daemon ```
The wizard walks you through model auth, channel setup, gateway token generation, and daemon installation (systemd).
```bash fallocate -l 2G /swapfile chmod 600 /swapfile mkswap /swapfile swapon /swapfile echo '/swapfile none swap sw 0 0' >> /etc/fstab ``` ```bash hanzo-bot status systemctl --user status openclaw-gateway.service journalctl --user -u openclaw-gateway.service -f ``` The gateway binds to loopback by default. Pick one of these options.
**Option A: SSH tunnel (simplest)**

```bash
# From your local machine
ssh -L 18789:localhost:18789 root@YOUR_DROPLET_IP
```

Then open `http://localhost:18789`.

**Option B: Tailscale Serve**

```bash
curl -fsSL https://tailscale.com/install.sh | sh
tailscale up
hanzo-bot config set gateway.tailscale.mode serve
hanzo-bot gateway restart
```

Then open `https://<magicdns>/` from any device on your tailnet.

**Option C: Tailnet bind (no Serve)**

```bash
hanzo-bot config set gateway.bind tailnet
hanzo-bot gateway restart
```

Then open `http://<tailscale-ip>:18789` (token required).

Troubleshooting

Gateway will not start -- Run hanzo-bot doctor --non-interactive and check logs with journalctl --user -u openclaw-gateway.service -n 50.

Port already in use -- Run lsof -i :18789 to find the process, then stop it.

Out of memory -- Verify swap is active with free -h. If still hitting OOM, use API-based models (Claude, GPT) rather than local models, or upgrade to a 2 GB Droplet.

Next steps