Hosting
Hetzner
Docker kullanarak bir Hetzner VPS üzerinde kalıcı durum, imaja gömülü ikili dosyalar ve güvenli yeniden başlatma davranışıyla sürekli çalışan bir OpenClaw Gateway çalıştırın.
Hetzner fiyatları değişebilir; gereksinimlerinizi karşılayan en küçük Debian/Ubuntu VPS'yi seçin ve bellek yetersizliği (OOM) sorunları yaşarsanız kapasiteyi artırın.
Gateway'e dizüstü bilgisayarınızdan SSH port yönlendirmesiyle veya güvenlik duvarını ve token'ları kendiniz yönetiyorsanız doğrudan port erişimiyle bağlanabilirsiniz.
Güvenlik modeli hatırlatması:
- Herkes aynı güven sınırı içindeyse ve çalışma zamanı yalnızca iş amaçlıysa şirket genelinde paylaşılan ajanların kullanılması uygundur.
- Katı ayrım uygulayın: özel VPS/çalışma zamanı + özel hesaplar; bu sunucuda kişisel Apple/Google/tarayıcı/parola yöneticisi profilleri bulundurmayın.
- Kullanıcılar birbirlerine karşı kötü niyetli olabilecekse onları Gateway, sunucu veya işletim sistemi kullanıcısına göre ayırın.
Bkz. Güvenlik ve VPS barındırma.
Bu kılavuz, Hetzner üzerinde Ubuntu veya Debian kullandığınızı varsayar. Başka bir Linux VPS kullanıyorsanız paketleri uygun şekilde eşleştirin. Genel Docker akışı için bkz. Docker.
Gereksinimler
- Root erişimine sahip Hetzner VPS
- Dizüstü bilgisayarınızdan SSH erişimi
- Docker ve Docker Compose
- Model kimlik doğrulama bilgileri
- İsteğe bağlı sağlayıcı kimlik bilgileri (WhatsApp QR kodu, Telegram bot token'ı, Gmail OAuth)
- Yaklaşık 20 dakika
Hızlı yol
- Hetzner VPS'yi sağlayın
- Docker'ı yükleyin
- OpenClaw deposunu klonlayın
- Kalıcı sunucu dizinlerini oluşturun
.envvedocker-compose.ymldosyalarını yapılandırın- Gerekli ikili dosyaları imaja gömün
docker compose up -d- Kalıcılığı ve Gateway erişimini doğrulayın
VPS'yi sağlayın
Hetzner'da bir Ubuntu veya Debian VPS oluşturun, ardından root olarak bağlanın:
ssh root@YOUR_VPS_IPVPS'yi atılabilir altyapı olarak değil, durum bilgisi taşıyan bir sistem olarak değerlendirin.
Docker'ı yükleyin (VPS üzerinde)
apt-get updateapt-get install -y git curl ca-certificatescurl -fsSL https://get.docker.com | shDoğrulayın:
docker --versiondocker compose versionOpenClaw deposunu klonlayın
git clone https://github.com/openclaw/openclaw.gitcd openclawBu kılavuz, imaja gömdüğünüz tüm ikili dosyaların yeniden başlatmalardan sonra korunması için özel bir imaj oluşturur.
Kalıcı sunucu dizinlerini oluşturun
Docker konteynerleri geçicidir; uzun süre saklanması gereken tüm durum sunucuda bulunmalıdır.
mkdir -p /root/.openclaw/workspace # Sahipliği konteyner kullanıcısına ayarlayın (uid 1000):chown -R 1000:1000 /root/.openclawOrtam değişkenlerini yapılandırın
Depo kökünde .env dosyasını oluşturun:
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/.openclawKararlı Gateway token'ını .env üzerinden yönetmek için
OPENCLAW_GATEWAY_TOKEN değerini ayarlayın; aksi takdirde istemcilerin
yeniden başlatmalar arasında çalışmasına güvenmeden önce gateway.auth.token
ayarını yapılandırın. İkisi de ayarlanmamışsa OpenClaw, o başlatma için
yalnızca çalışma zamanında geçerli bir token kullanır. GOG_KEYRING_PASSWORD
için bir anahtarlık parolası oluşturun:
openssl rand -hex 32Bu dosyayı depoya işlemeyin. Dosya, OPENCLAW_GATEWAY_TOKEN gibi
konteyner/çalışma zamanı ortam değişkenlerini içerir. Saklanan sağlayıcı
OAuth/API anahtarı kimlik doğrulama bilgileri, bağlanan
~/.openclaw/agents/<agentId>/agent/auth-profiles.json dosyasında bulunur.
Docker Compose yapılandırması
docker-compose.yml dosyasını oluşturun veya güncelleyin:
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: # Önerilen: Gateway'i VPS üzerinde yalnızca yerel geri döngüden erişilebilir tutun; SSH tüneli üzerinden erişin. # Herkese açık hâle getirmek için `127.0.0.1:` önekini kaldırın ve güvenlik duvarını buna göre yapılandırın. - "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 yalnızca ilk kurulumu kolaylaştırmak içindir; gerçek Gateway yapılandırmasının yerine geçmez. Dağıtımınız için yine de kimlik doğrulamayı (gateway.auth.token veya parola) ve güvenli bir bağlama modunu ayarlayın.
Paylaşılan Docker VM çalışma zamanı adımları
Ortak Docker sunucusu akışı için paylaşılan çalışma zamanı kılavuzunu izleyin:
Hetzner'a özgü erişim
Paylaşılan derleme ve başlatma adımlarından sonra tüneli açın.
Ön koşul: VPS'nizin sshd yapılandırmasının TCP yönlendirmesine izin
verdiğinden emin olun. SSH yapılandırmanızı sıkılaştırdıysanız
/etc/ssh/sshd_config dosyasını kontrol edin ve şunu ayarlayın:
AllowTcpForwarding locallocal, sunucudan uzak yönlendirmeleri engellerken dizüstü bilgisayarınızdan
ssh -L ile yerel yönlendirmelere izin verir. Bu değeri no olarak ayarlamak,
tünelin şu hatayla başarısız olmasına neden olur:
channel 3: open failed: administratively prohibited: open failed
TCP yönlendirmenin etkin olduğunu doğruladıktan sonra SSH hizmetini yeniden
başlatın (systemctl restart ssh) ve tüneli dizüstü bilgisayarınızdan çalıştırın:
ssh -N -L 18789:127.0.0.1:18789 root@YOUR_VPS_IPhttp://127.0.0.1:18789/ adresini açın ve yapılandırılmış paylaşılan gizli
bilgiyi yapıştırın. Bu kılavuz varsayılan olarak Gateway token'ını kullanır;
parola tabanlı kimlik doğrulamaya geçtiyseniz bunun yerine yapılandırdığınız
parolayı kullanın.
Paylaşılan kalıcılık eşlemesi Docker VM Çalışma Zamanı bölümünde yer alır.
Kod Olarak Altyapı (Terraform)
Kod olarak altyapı iş akışlarını tercih eden ekipler için topluluk tarafından sürdürülen bir Terraform kurulumu şunları sağlar:
- Uzak durum yönetimine sahip modüler Terraform yapılandırması
- cloud-init aracılığıyla otomatik kaynak sağlama
- Dağıtım betikleri (ilk kurulum, dağıtım, yedekleme/geri yükleme)
- Güvenlik sıkılaştırması (güvenlik duvarı, UFW, yalnızca SSH erişimi)
- Gateway erişimi için SSH tüneli yapılandırması
Depolar:
- Altyapı: openclaw-terraform-hetzner
- Docker yapılandırması: openclaw-docker-config
Bu yaklaşım, yukarıdaki Docker kurulumunu yeniden üretilebilir dağıtımlar, sürüm denetimli altyapı ve otomatik olağanüstü durum kurtarma özellikleriyle tamamlar.
Sonraki adımlar
- Mesajlaşma kanallarını kurun: Kanallar
- Gateway'i yapılandırın: Gateway yapılandırması
- OpenClaw'ı güncel tutun: Güncelleme