Skip to main content

OpenClaw på Hetzner (Docker, produktionsguide för VPS)

Mål

Kör en beständig OpenClaw Gateway på en Hetzner VPS med Docker, med hållbar state, inbakade binärer och säkert omstartsbeteende. Om du vill ha “OpenClaw 24/7 för ~$5”, är detta den enklaste tillförlitliga inställningen. Hetzner ändrar pris; välj de minsta Debian/Ubuntu VPS och skala upp om du träffar OOMs.

Vad gör vi (enkelt förklarat)?

  • Hyr en liten Linux‑server (Hetzner VPS)
  • Installera Docker (isolerad app‑runtime)
  • Starta OpenClaw Gateway i Docker
  • Persist ~/.openclaw + ~/.openclaw/workspace på värden (överlever omstarter/ombyggen)
  • Få åtkomst till Control UI från din laptop via en SSH‑tunnel
Gateway kan nås via:
  • SSH‑portvidarebefordran från din laptop
  • Direkt portexponering om du själv hanterar brandvägg och tokens
Denna guide förutsätter Ubuntu eller Debian på Hetzner.
Om du är på en annan Linux VPS, kartpaket i enlighet därmed. För generiska Docker-flödet, se Docker.

Snabb väg (erfarna operatörer)

  1. Provisionera Hetzner VPS
  2. Installera Docker
  3. Klona OpenClaw‑repo
  4. Skapa beständiga kataloger på värden
  5. Konfigurera .env och docker-compose.yml
  6. Baka in nödvändiga binärer i imagen
  7. docker compose up -d
  8. Verifiera persistens och Gateway‑åtkomst

Vad du behöver

  • Hetzner VPS med root‑åtkomst
  • SSH‑åtkomst från din laptop
  • Grundläggande vana vid SSH + kopiera/klistra in
  • ~20 minuter
  • Docker och Docker Compose
  • Autentiseringsuppgifter för modeller
  • Valfria leverantörsuppgifter
    • WhatsApp‑QR
    • Telegram‑bottoken
    • Gmail OAuth

1. Provisionera VPS:en

Skapa en Ubuntu‑ eller Debian‑VPS i Hetzner. Anslut som root:
Denna guide antar att VPS är stateful. Behandla det inte som engångsinfrastruktur.

2. Installera Docker (på VPS:en)

Verifiera:

3. Klona OpenClaw‑repo:t

Den här guiden förutsätter att du bygger en anpassad image för att garantera binär persistens.

4. Skapa beständiga kataloger på värden

Docker behållare är efhemeral. Alla långlivade stater måste leva på värden.

5. Konfigurera miljövariabler

Skapa .env i repo‑roten.
Generera starka hemligheter:
Committa inte den här filen.

6. Docker Compose‑konfiguration

Skapa eller uppdatera docker-compose.yml.
--allow-unconfigured is only for bootstrap convenience, it is not a replacement for a proper gateway configuration. Still set auth (gateway.auth.token or password) and use safe bind settings for your deployment.

7. Baka in nödvändiga binärer i imagen (kritiskt)

Installera binärer i en fungerande behållare är en fälla. Allt som är installerat vid körtiden kommer att gå förlorat vid omstart. Alla externa binärer som krävs av skills måste installeras vid image‑build‑tid. Exemplen nedan visar endast tre vanliga binärer:
  • gog för Gmail‑åtkomst
  • goplaces för Google Places
  • wacli för WhatsApp
Detta är exempel, inte en fullständig lista. Du kan installera så många binärer som behövs med samma mönster. Om du senare lägger till nya skills som beror på ytterligare binärer måste du:
  1. Uppdatera Dockerfile
  2. Bygga om imagen
  3. Starta om containrarna
Exempel på Dockerfile

8. Bygg och starta

Verifiera binärer:
Förväntad utdata:

9. Verifiera Gateway

Lyckat:
Från din laptop:
Öppna: http://127.0.0.1:18789/ Klistra in din gateway‑token.

Vad persisterar var (källan till sanning)

OpenClaw körs i Docker, men Docker är inte sanningens källa. Alla långlivade tillstånd måste överleva omstarter, återuppbygga och starta om.

Infrastructure as Code (Terraform)

För team som föredrar infrastruktur-som-kod-flöden erbjuder en community-underhållen Terraform-konfiguration:
  • Modulär Terraform-konfiguration med hantering av fjärrlagrat state
  • Automatiserad provisionering via cloud-init
  • Driftsättningsskript (bootstrap, deploy, backup/restore)
  • Säkerhetshärdning (brandvägg, UFW, endast SSH-åtkomst)
  • SSH-tunnelkonfiguration för gateway-åtkomst
Repositories: Denna metod kompletterar Docker-konfigurationen ovan med reproducerbara driftsättningar, versionshanterad infrastruktur och automatiserad katastrofåterställning.
Obs: Underhålls av communityn. För problem eller bidrag, se repository-länkarna ovan.