Hosting
Hetzner
Jalankan Gateway OpenClaw persisten pada VPS Hetzner menggunakan Docker, dengan status tahan lama, biner bawaan, dan perilaku mulai ulang yang aman.
Harga Hetzner dapat berubah; pilih VPS Debian/Ubuntu terkecil yang memenuhi kebutuhan dan tingkatkan kapasitasnya jika terjadi OOM.
Gateway dapat diakses melalui penerusan porta SSH dari laptop Anda, atau melalui pemaparan porta langsung jika Anda mengelola firewall dan token sendiri.
Pengingat model keamanan:
- Agen yang digunakan bersama dalam perusahaan dapat digunakan jika semua orang berada dalam batas kepercayaan yang sama dan runtime hanya digunakan untuk keperluan bisnis.
- Pertahankan pemisahan ketat: VPS/runtime khusus + akun khusus; jangan gunakan profil Apple/Google/peramban/pengelola kata sandi pribadi pada host tersebut.
- Jika para pengguna dapat saling bermusuhan, pisahkan berdasarkan Gateway/host/pengguna OS.
Lihat Keamanan dan Hosting VPS.
Panduan ini mengasumsikan penggunaan Ubuntu atau Debian di Hetzner. Pada VPS Linux lain, sesuaikan paketnya. Untuk alur Docker generik, lihat Docker.
Yang Anda perlukan
- VPS Hetzner dengan akses root
- Akses SSH dari laptop Anda
- Docker dan Docker Compose
- Kredensial autentikasi model
- Kredensial penyedia opsional (QR WhatsApp, token bot Telegram, OAuth Gmail)
- ~20 menit
Jalur cepat
- Sediakan VPS Hetzner
- Instal Docker
- Klona repositori OpenClaw
- Buat direktori host persisten
- Konfigurasikan
.envdandocker-compose.yml - Tanamkan biner yang diperlukan ke dalam image
docker compose up -d- Verifikasi persistensi dan akses Gateway
Sediakan VPS
Buat VPS Ubuntu atau Debian di Hetzner, lalu hubungkan sebagai root:
ssh root@YOUR_VPS_IPPerlakukan VPS sebagai infrastruktur yang memiliki status, bukan infrastruktur sekali pakai.
Instal Docker (di VPS)
apt-get updateapt-get install -y git curl ca-certificatescurl -fsSL https://get.docker.com | shVerifikasi:
docker --versiondocker compose versionKlona repositori OpenClaw
git clone https://github.com/openclaw/openclaw.gitcd openclawPanduan ini membangun image khusus agar semua biner yang Anda tanamkan tetap tersedia setelah mulai ulang.
Buat direktori host persisten
Kontainer Docker bersifat sementara; semua status berumur panjang harus berada di host.
mkdir -p /root/.openclaw/workspace # Atur kepemilikan ke pengguna kontainer (uid 1000):chown -R 1000:1000 /root/.openclawKonfigurasikan variabel lingkungan
Buat .env di root repositori:
OPENCLAW_IMAGE=openclaw:latestOPENCLAW_GATEWAY_TOKEN=OPENCLAW_GATEWAY_BIND=lanOPENCLAW_GATEWAY_PORT=18789 OPENCLAW_CONFIG_DIR=/root/.openclawOPENCLAW_WORKSPACE_DIR=/root/.openclaw/workspace GOG_KEYRING_PASSWORD=XDG_CONFIG_HOME=/home/node/.openclawAtur OPENCLAW_GATEWAY_TOKEN untuk mengelola token Gateway yang stabil melalui
.env; jika tidak, konfigurasikan gateway.auth.token sebelum mengandalkan klien
setelah mulai ulang. Jika keduanya tidak diatur, OpenClaw menggunakan token khusus runtime
untuk proses awal tersebut. Buat kata sandi keyring untuk GOG_KEYRING_PASSWORD:
openssl rand -hex 32Jangan commit berkas ini. Berkas ini menyimpan lingkungan kontainer/runtime seperti
OPENCLAW_GATEWAY_TOKEN. Autentikasi OAuth/kunci API penyedia yang tersimpan berada dalam
~/.openclaw/agents/<agentId>/agent/auth-profiles.json yang dipasang.
Konfigurasi Docker Compose
Buat atau perbarui docker-compose.yml:
services: openclaw-gateway: image: ${OPENCLAW_IMAGE} build: . restart: unless-stopped env_file: - .env environment: - HOME=/home/node - NODE_ENV=production - TERM=xterm-256color - OPENCLAW_GATEWAY_BIND=${OPENCLAW_GATEWAY_BIND} - OPENCLAW_GATEWAY_PORT=${OPENCLAW_GATEWAY_PORT} - OPENCLAW_GATEWAY_TOKEN=${OPENCLAW_GATEWAY_TOKEN} - GOG_KEYRING_PASSWORD=${GOG_KEYRING_PASSWORD} - XDG_CONFIG_HOME=${XDG_CONFIG_HOME} - PATH=/home/linuxbrew/.linuxbrew/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin volumes: - ${OPENCLAW_CONFIG_DIR}:/home/node/.openclaw - ${OPENCLAW_WORKSPACE_DIR}:/home/node/.openclaw/workspace ports: # Disarankan: pertahankan Gateway hanya pada loopback di VPS; akses melalui terowongan SSH. # Untuk memaparkannya secara publik, hapus awalan `127.0.0.1:` dan konfigurasikan firewall sebagaimana mestinya. - "127.0.0.1:${OPENCLAW_GATEWAY_PORT}:18789" command: [ "node", "dist/index.js", "gateway", "--bind", "${OPENCLAW_GATEWAY_BIND}", "--port", "${OPENCLAW_GATEWAY_PORT}", "--allow-unconfigured", ]--allow-unconfigured hanya ditujukan untuk memudahkan bootstrap, bukan sebagai pengganti konfigurasi Gateway yang sebenarnya. Tetap atur autentikasi (gateway.auth.token atau kata sandi) dan mode pengikatan yang aman untuk penerapan Anda.
Langkah runtime VM Docker bersama
Ikuti panduan runtime bersama untuk alur host Docker umum:
Akses khusus Hetzner
Setelah menyelesaikan langkah pembangunan dan peluncuran bersama, buka terowongan.
Prasyarat: pastikan konfigurasi sshd VPS Anda mengizinkan penerusan TCP. Jika Anda
telah memperketat konfigurasi SSH, periksa /etc/ssh/sshd_config dan atur:
AllowTcpForwarding locallocal mengizinkan penerusan lokal ssh -L dari laptop Anda sekaligus memblokir
penerusan jarak jauh dari server. Mengaturnya ke no menyebabkan terowongan gagal dengan:
channel 3: open failed: administratively prohibited: open failed
Setelah memastikan penerusan TCP diaktifkan, mulai ulang layanan SSH
(systemctl restart ssh) dan jalankan terowongan dari laptop Anda:
ssh -N -L 18789:127.0.0.1:18789 root@YOUR_VPS_IPBuka http://127.0.0.1:18789/ dan tempelkan rahasia bersama yang telah dikonfigurasi.
Panduan ini menggunakan token Gateway secara default; gunakan kata sandi yang telah dikonfigurasi
jika Anda beralih ke autentikasi kata sandi.
Peta persistensi bersama tersedia di Runtime VM Docker.
Infrastruktur sebagai Kode (Terraform)
Untuk tim yang memilih alur kerja infrastruktur sebagai kode, konfigurasi Terraform yang dikelola komunitas menyediakan:
- Konfigurasi Terraform modular dengan pengelolaan status jarak jauh
- Penyediaan otomatis melalui cloud-init
- Skrip penerapan (bootstrap, penerapan, pencadangan/pemulihan)
- Penguatan keamanan (firewall, UFW, akses hanya melalui SSH)
- Konfigurasi terowongan SSH untuk akses Gateway
Repositori:
- Infrastruktur: openclaw-terraform-hetzner
- Konfigurasi Docker: openclaw-docker-config
Pendekatan ini melengkapi konfigurasi Docker di atas dengan penerapan yang dapat direproduksi, infrastruktur yang dikontrol versinya, dan pemulihan bencana otomatis.
Langkah berikutnya
- Siapkan saluran perpesanan: Saluran
- Konfigurasikan Gateway: Konfigurasi Gateway
- Jaga agar OpenClaw tetap mutakhir: Memperbarui