Docker (isteğe bağlı)
Docker isteğe bağlıdır. Yalnızca container tabanlı bir gateway istiyorsanız veya Docker akışını doğrulamak istiyorsanız kullanın.Docker benim için uygun mu?
- Evet: yalıtılmış, geçici bir gateway ortamı istiyorsunuz veya OpenClaw’ı yerel kurulum olmayan bir ana bilgisayarda çalıştırmak istiyorsunuz.
- Hayır: kendi makinenizde çalışıyorsunuz ve yalnızca en hızlı geliştirme döngüsünü istiyorsunuz. Bunun yerine normal kurulum akışını kullanın.
- Sandbox notu: ajan sandboxing de Docker kullanır, ancak bunun için tam gateway’in Docker içinde çalışması gerekmez. Bkz. Sandboxing.
Ön koşullar
- Docker Desktop (veya Docker Engine) + Docker Compose v2
- Görüntü oluşturma için en az 2 GB RAM (
pnpm install, 1 GB ana bilgisayarlarda 137 çıkış koduyla OOM nedeniyle öldürülebilir) - İmajlar ve günlükler için yeterli disk alanı
- VPS/genel ana bilgisayarda çalıştırıyorsanız
Ağ erişimi için güvenlik sağlamlaştırması bölümünü,
özellikle Docker
DOCKER-USERgüvenlik duvarı ilkesini inceleyin.
Container tabanlı Gateway
İmajı oluşturun
Depo kök dizininden kurulum betiğini çalıştırın:Bu, gateway imajını yerelde oluşturur. Bunun yerine önceden oluşturulmuş bir imaj kullanmak için:Önceden oluşturulmuş imajlar
GitHub Container Registry üzerinde yayımlanır.
Yaygın etiketler:
main, latest, <version> (ör. 2026.2.26).Onboarding'i tamamlayın
Kurulum betiği onboarding’i otomatik olarak çalıştırır. Şunları yapar:
- sağlayıcı API anahtarlarını sorar
- bir gateway token’ı oluşturur ve bunu
.envdosyasına yazar - gateway’i Docker Compose üzerinden başlatır
openclaw-gateway üzerinden çalışır. openclaw-cli, yalnızca
gateway container’ı zaten var olduktan sonra çalıştırdığınız komutlar içindir.Control UI'ı açın
Tarayıcınızda
http://127.0.0.1:18789/ adresini açın ve yapılandırılmış
paylaşılan gizli anahtarı Ayarlar’a yapıştırın. Kurulum betiği varsayılan
olarak .env dosyasına bir token yazar; container yapılandırmasını parola
kimlik doğrulamasına geçirirseniz bunun yerine o parolayı kullanın.URL’ye tekrar mı ihtiyacınız var?El ile akış
Kurulum betiğini kullanmak yerine her adımı kendiniz çalıştırmayı tercih ederseniz:docker compose komutunu depo kök dizininden çalıştırın. OPENCLAW_EXTRA_MOUNTS
veya OPENCLAW_HOME_VOLUME etkinleştirdiyseniz kurulum betiği docker-compose.extra.yml
dosyasını yazar; bunu -f docker-compose.yml -f docker-compose.extra.yml ile ekleyin.openclaw-cli, openclaw-gateway ile aynı ağ ad alanını paylaştığı için
başlatma sonrası bir araçtır. docker compose up -d openclaw-gateway öncesinde onboarding
ve kurulum zamanı yapılandırma yazmalarını openclaw-gateway üzerinden
--no-deps --entrypoint node ile çalıştırın.Ortam değişkenleri
Kurulum betiği şu isteğe bağlı ortam değişkenlerini kabul eder:| Değişken | Amaç |
|---|---|
OPENCLAW_IMAGE | Yerelde oluşturmak yerine uzak bir imaj kullan |
OPENCLAW_DOCKER_APT_PACKAGES | Derleme sırasında ek apt paketleri kur |
OPENCLAW_EXTENSIONS | Eklenti bağımlılıklarını derleme zamanında önceden kur (boşlukla ayrılmış adlar) |
OPENCLAW_EXTRA_MOUNTS | Ek ana bilgisayar bind mount’ları (virgülle ayrılmış source:target[:opts]) |
OPENCLAW_HOME_VOLUME | /home/node dizinini adlandırılmış bir Docker volume içinde kalıcı hale getir |
OPENCLAW_SANDBOX | Sandbox bootstrap kullanımını etkinleştir (1, true, yes, on) |
OPENCLAW_DOCKER_SOCKET | Docker socket yolunu geçersiz kıl |
Sağlık denetimleri
Container probe uç noktaları (kimlik doğrulama gerekmez):/healthz uç noktasına ping atan yerleşik bir HEALTHCHECK içerir.
Denetimler sürekli başarısız olursa Docker container’ı unhealthy olarak işaretler ve
orkestrasyon sistemleri onu yeniden başlatabilir veya değiştirebilir.
Kimliği doğrulanmış ayrıntılı sağlık anlık görüntüsü:
LAN ve loopback karşılaştırması
scripts/docker/setup.sh, Docker port yayımlama ile ana bilgisayardan
http://127.0.0.1:18789 erişiminin çalışması için varsayılan olarak OPENCLAW_GATEWAY_BIND=lan kullanır.
lan(varsayılan): ana bilgisayar tarayıcısı ve ana bilgisayar CLI, yayımlanan gateway portuna erişebilir.loopback: yalnızca container ağ ad alanı içindeki süreçler doğrudan gateway’e erişebilir.
gateway.bind içinde bind modu değerlerini (lan / loopback / custom /
tailnet / auto) kullanın; 0.0.0.0 veya 127.0.0.1 gibi ana bilgisayar diğer adlarını kullanmayın.Depolama ve kalıcılık
Docker Compose,OPENCLAW_CONFIG_DIR dizinini /home/node/.openclaw yoluna ve
OPENCLAW_WORKSPACE_DIR dizinini /home/node/.openclaw/workspace yoluna bind-mount eder; böylece bu yollar
container değiştirildiğinde korunur.
Bu bağlanan yapılandırma dizini, OpenClaw’ın şunları tuttuğu yerdir:
- davranış yapılandırması için
openclaw.json - depolanan sağlayıcı OAuth/API anahtarı kimlik doğrulaması için
agents/<agentId>/agent/auth-profiles.json OPENCLAW_GATEWAY_TOKENgibi ortam destekli çalışma zamanı gizli anahtarları için.env
/tmp/openclaw/ altındaki media/, oturum JSONL dosyaları, cron/runs/*.jsonl
ve dönen dosya günlüklerini izleyin.
Shell yardımcıları (isteğe bağlı)
Günlük Docker yönetimini kolaylaştırmak içinClawDock yükleyin:
scripts/shell-helpers/clawdock-helpers.sh ham yolundan yüklediyseniz, yerel yardımcı dosyanızın yeni konumu izlemesi için yukarıdaki yükleme komutunu yeniden çalıştırın.
Ardından clawdock-start, clawdock-stop, clawdock-dashboard vb. kullanın.
Tüm komutlar için clawdock-help çalıştırın.
Tam yardımcı kılavuzu için bkz. ClawDock.
Docker gateway için ajan sandbox'ı etkinleştir
Docker gateway için ajan sandbox'ı etkinleştir
docker.sock mount eder. Eğer
sandbox kurulumu tamamlanamazsa betik agents.defaults.sandbox.mode
değerini off olarak sıfırlar.Otomasyon / CI (etkileşimsiz)
Otomasyon / CI (etkileşimsiz)
-T ile Compose pseudo-TTY tahsisini devre dışı bırakın:Paylaşılan ağ güvenlik notu
Paylaşılan ağ güvenlik notu
openclaw-cli, CLI
komutlarının gateway’e 127.0.0.1 üzerinden ulaşabilmesi için network_mode: "service:openclaw-gateway" kullanır. Bunu paylaşılan
bir güven sınırı olarak değerlendirin. Compose yapılandırması NET_RAW/NET_ADMIN yetkilerini kaldırır ve
openclaw-cli üzerinde no-new-privileges etkinleştirir.İzinler ve EACCES
İzinler ve EACCES
İmaj
node (uid 1000) kullanıcısıyla çalışır. Eğer
/home/node/.openclaw üzerinde izin hataları görüyorsanız, ana bilgisayar bind mount’larınızın uid 1000’e ait olduğundan emin olun:Daha hızlı yeniden derlemeler
Daha hızlı yeniden derlemeler
Dockerfile’ınızı bağımlılık katmanları önbelleğe alınacak şekilde sıralayın. Bu,
lockfile’lar değişmediği sürece
pnpm install komutunun yeniden çalıştırılmasını önler:İleri düzey kullanıcılar için container seçenekleri
İleri düzey kullanıcılar için container seçenekleri
Varsayılan imaj güvenlik önceliklidir ve root olmayan
node kullanıcısıyla çalışır. Daha
tam özellikli bir container için:/home/nodedizinini kalıcı hale getirin:export OPENCLAW_HOME_VOLUME="openclaw_home"- Sistem bağımlılıklarını imaja ekleyin:
export OPENCLAW_DOCKER_APT_PACKAGES="git curl jq" - Playwright tarayıcılarını yükleyin:
- Tarayıcı indirmelerini kalıcı hale getirin: şunu ayarlayın:
PLAYWRIGHT_BROWSERS_PATH=/home/node/.cache/ms-playwrightveOPENCLAW_HOME_VOLUMEveyaOPENCLAW_EXTRA_MOUNTSkullanın.
OpenAI Codex OAuth (headless Docker)
OpenAI Codex OAuth (headless Docker)
Sihirbazda OpenAI Codex OAuth seçerseniz bir tarayıcı URL’si açılır. Docker
veya headless kurulumlarda, ulaştığınız tam yönlendirme URL’sini kopyalayın ve
kimlik doğrulamayı tamamlamak için bunu sihirbaza geri yapıştırın.
Temel imaj meta verileri
Temel imaj meta verileri
Ana Docker imajı
node:24-bookworm kullanır ve
org.opencontainers.image.base.name,
org.opencontainers.image.source ve diğerleri dahil OCI temel imaj
açıklamalarını yayımlar. Bkz.
OCI imaj açıklamaları.VPS üzerinde mi çalıştırıyorsunuz?
İkili dosya gömme, kalıcılık ve güncellemeler dahil paylaşılan VM dağıtım adımları için bkz. Hetzner (Docker VPS) ve Docker VM Runtime.Agent Sandbox
agents.defaults.sandbox etkin olduğunda, gateway ajan araç yürütmesini
(shell, dosya okuma/yazma vb.) yalıtılmış Docker container’ları içinde çalıştırır; gateway’in
kendisi ise ana bilgisayarda kalır. Bu, tüm gateway’i container içine almadan
güvenilmeyen veya çok kiracılı ajan oturumları etrafında sert bir sınır sağlar.
Sandbox kapsamı ajan başına (varsayılan), oturum başına veya paylaşımlı olabilir. Her kapsam
için /workspace adresine bağlanmış kendi çalışma alanı bulunur. Ayrıca
izinli/yasaklı araç ilkeleri, ağ yalıtımı, kaynak sınırları ve tarayıcı
container’ları da yapılandırabilirsiniz.
Tam yapılandırma, imajlar, güvenlik notları ve çok ajanlı profiller için bkz.:
- Sandboxing — eksiksiz sandbox başvurusu
- OpenShell — sandbox container’larına etkileşimli shell erişimi
- Multi-Agent Sandbox and Tools — ajan başına geçersiz kılmalar
Hızlı etkinleştirme
Sorun giderme
İmaj eksik veya sandbox container'ı başlamıyor
İmaj eksik veya sandbox container'ı başlamıyor
Sandbox imajını
scripts/sandbox-setup.sh
ile oluşturun veya agents.defaults.sandbox.docker.image değerini kendi özel imajınıza ayarlayın.
Container’lar gerektikçe oturum başına otomatik oluşturulur.Sandbox içinde izin hataları
Sandbox içinde izin hataları
docker.user değerini bağlı çalışma alanı sahipliğiyle eşleşen bir UID:GID olarak ayarlayın
veya çalışma alanı klasörünün sahibini değiştirin.Özel araçlar sandbox içinde bulunamıyor
Özel araçlar sandbox içinde bulunamıyor
OpenClaw komutları
sh -lc (login shell) ile çalıştırır; bu,
/etc/profile dosyasını yükler ve PATH’i sıfırlayabilir. Özel
araç yollarınızı öne eklemek için docker.env.PATH ayarlayın veya Dockerfile’ınıza /etc/profile.d/
altında bir betik ekleyin.İmaj derlemesi sırasında OOM nedeniyle öldürüldü (çıkış 137)
İmaj derlemesi sırasında OOM nedeniyle öldürüldü (çıkış 137)
VM en az 2 GB RAM gerektirir. Daha büyük bir makine sınıfı kullanın ve yeniden deneyin.
Control UI'da yetkisiz veya eşleme gerekli
Control UI'da yetkisiz veya eşleme gerekli
Gateway hedefi ws://172.x.x.x gösteriyor veya Docker CLI'dan eşleme hataları alınıyor
Gateway hedefi ws://172.x.x.x gösteriyor veya Docker CLI'dan eşleme hataları alınıyor
Gateway modunu ve bind ayarını sıfırlayın:
İlgili
- Kurulum Genel Bakış — tüm kurulum yöntemleri
- Podman — Docker’a Podman alternatifi
- ClawDock — Docker Compose topluluk kurulumu
- Güncelleme — OpenClaw’ı güncel tutma
- Yapılandırma — kurulum sonrası gateway yapılandırması