OpenClaw na Hetzner (Docker, przewodnik dla produkcyjnego VPS)
Cel
Uruchomić trwały OpenClaw Gateway na VPS Hetzner z użyciem Dockera, z zachowaniem stanu, wbudowanymi binariami i bezpiecznym zachowaniem przy restartach. Jeśli chcesz „OpenClaw 24/7 za ~5 USD”, jest to najprostsza niezawodna konfiguracja. Cennik Hetznera się zmienia; wybierz najmniejszy VPS z Debianem/Ubuntu i zwiększ zasoby, jeśli napotkasz OOM.Co robimy (w prostych słowach)?
- Wynajmujemy mały serwer Linux (VPS Hetzner)
- Instalujemy Dockera (izolowane środowisko uruchomieniowe aplikacji)
- Uruchamiamy OpenClaw Gateway w Dockerze
- Utrwalamy
~/.openclaw+~/.openclaw/workspacena hoście (przetrwa restarty/przebudowy) - Uzyskujemy dostęp do interfejsu Control UI z laptopa przez tunel SSH
- Przekierowanie portów SSH z laptopa
- Bezpośrednie wystawienie portu, jeśli samodzielnie zarządzasz zaporą i tokenami
Jeśli korzystasz z innego VPS Linux, dopasuj pakiety odpowiednio. Dla ogólnego przepływu Dockera zobacz Docker.
Szybka ścieżka (doświadczeni operatorzy)
- Utwórz VPS Hetzner
- Zainstaluj Dockera
- Sklonuj repozytorium OpenClaw
- Utwórz trwałe katalogi na hoście
- Skonfiguruj
.envidocker-compose.yml - Wbuduj wymagane binaria do obrazu
docker compose up -d- Zweryfikuj trwałość i dostęp do Gateway
Czego potrzebujesz
- VPS Hetzner z dostępem root
- Dostęp SSH z laptopa
- Podstawowa biegłość w SSH + kopiuj/wklej
- ~20 minut
- Docker i Docker Compose
- Poświadczenia uwierzytelniania modelu
- Opcjonalne poświadczenia dostawców
- Kod QR WhatsApp
- Token bota Telegram
- OAuth Gmail
1. Utworzenie VPS
Utwórz VPS z Ubuntu lub Debianem w Hetznerze. Połącz się jako root:2. Instalacja Dockera (na VPS)
3. Klonowanie repozytorium OpenClaw
4. Utworzenie trwałych katalogów na hoście
Kontenery Dockera są efemeryczne. Cały długotrwały stan musi znajdować się na hoście.5. Konfiguracja zmiennych środowiskowych
Utwórz.env w katalogu głównym repozytorium.
6. Konfiguracja Docker Compose
Utwórz lub zaktualizujdocker-compose.yml.
--allow-unconfigured służy wyłącznie do wygodnej inicjalizacji (bootstrap) i nie zastępuje prawidłowej konfiguracji Gateway. Nadal należy ustawić uwierzytelnianie (gateway.auth.token lub hasło) oraz używać bezpiecznych ustawień bindowania odpowiednich dla Twojego wdrożenia.
7. Wbudowanie wymaganych binariów do obrazu (krytyczne)
Instalowanie binariów wewnątrz działającego kontenera to pułapka. Wszystko zainstalowane w czasie działania zostanie utracone po restarcie. Wszystkie zewnętrzne binaria wymagane przez Skills muszą być instalowane na etapie budowania obrazu. Poniższe przykłady pokazują tylko trzy typowe binaria:gogdo dostępu do Gmailagoplacesdo Google Placeswaclido WhatsApp
- Zaktualizować Dockerfile
- Przebudować obraz
- Zrestartować kontenery
8. Budowanie i uruchomienie
9. Weryfikacja Gateway
http://127.0.0.1:18789/
Wklej token Gateway.
Co i gdzie jest utrwalane (źródło prawdy)
OpenClaw działa w Dockerze, ale Docker nie jest źródłem prawdy. Cały długotrwały stan musi przetrwać restarty, przebudowy i rebooty.| Komponent | Lokalizacja | Mechanizm trwałości | Uwagi |
|---|---|---|---|
| Konfiguracja Gateway | /home/node/.openclaw/ | Montaż wolumenu hosta | Zawiera openclaw.json, tokeny |
| Profile uwierzytelniania modeli | /home/node/.openclaw/ | Montaż wolumenu hosta | Tokeny OAuth, klucze API |
| Konfiguracje Skills | /home/node/.openclaw/skills/ | Montaż wolumenu hosta | Stan na poziomie Skills |
| Obszar roboczy agenta | /home/node/.openclaw/workspace/ | Montaż wolumenu hosta | Kod i artefakty agenta |
| Sesja WhatsApp | /home/node/.openclaw/ | Montaż wolumenu hosta | Zachowuje logowanie QR |
| Pęk kluczy Gmail | /home/node/.openclaw/ | Wolumen hosta + hasło | Wymaga GOG_KEYRING_PASSWORD |
| Zewnętrzne binaria | /usr/local/bin/ | Obraz Dockera | Musi być upieczony w czasie budowy |
| Runtime Node | System plików kontenera | Obraz Dockera | Odbudowywane przy każdym buildzie |
| Pakiety systemowe | System plików kontenera | Obraz Dockera | Nie instalować w czasie działania |
| Kontener Dockera | Efemeryczny | Restartowalny | Bezpieczny do zniszczenia |
Infrastructure as Code (Terraform)
Dla zespołów preferujących workflow infrastructure-as-code, społeczność utrzymuje konfigurację Terraform, która zapewnia:- Modularną konfigurację Terraform z zarządzaniem zdalnym stanem
- Automatyczne provisioning za pomocą cloud-init
- Skrypty wdrożeniowe (bootstrap, deploy, backup/restore)
- Wzmocnienie bezpieczeństwa (firewall, UFW, dostęp tylko przez SSH)
- Konfigurację tunelu SSH do dostępu do gateway
- Infrastruktura: openclaw-terraform-hetzner
- Konfiguracja Docker: openclaw-docker-config
Uwaga: Utrzymywane przez społeczność. W przypadku problemów lub chęci wniesienia wkładu zobacz linki do repozytoriów powyżej.