Hosting
Hetzner
الهدف
شغّل OpenClaw Gateway دائمًا على Hetzner VPS باستخدام Docker، مع حالة دائمة، وثنائيات مدمجة، وسلوك إعادة تشغيل آمن.
إذا كنت تريد "OpenClaw على مدار الساعة مقابل نحو 5 دولارات"، فهذا هو أبسط إعداد موثوق. تتغير أسعار Hetzner؛ اختر أصغر VPS يعمل بنظام Debian/Ubuntu وزد الموارد إذا واجهت نفادًا في الذاكرة.
تذكير بنموذج الأمان:
- الوكلاء المشتركون على مستوى الشركة مناسبون عندما يكون الجميع ضمن حدود الثقة نفسها ويكون وقت التشغيل مخصصًا للأعمال فقط.
- حافظ على فصل صارم: VPS/وقت تشغيل مخصص + حسابات مخصصة؛ لا تستخدم ملفات تعريف Apple/Google/المتصفح/مدير كلمات المرور الشخصية على ذلك المضيف.
- إذا كان المستخدمون خصومًا لبعضهم، فافصلهم حسب Gateway/المضيف/مستخدم نظام التشغيل.
راجع الأمان واستضافة VPS.
ماذا سنفعل (بعبارات بسيطة)؟
- استئجار خادم Linux صغير (Hetzner VPS)
- تثبيت Docker (وقت تشغيل تطبيق معزول)
- بدء OpenClaw Gateway في Docker
- حفظ
~/.openclaw+~/.openclaw/workspaceعلى المضيف بشكل دائم (يبقى بعد إعادة التشغيل/إعادة البناء) - الوصول إلى واجهة التحكم من حاسوبك المحمول عبر نفق SSH
تتضمن حالة ~/.openclaw المثبتة هذه openclaw.json، وملف
agents/<agentId>/agent/auth-profiles.json لكل وكيل، و.env.
يمكن الوصول إلى Gateway عبر:
- إعادة توجيه منفذ SSH من حاسوبك المحمول
- تعريض المنفذ مباشرة إذا كنت تدير الجدار الناري والرموز بنفسك
يفترض هذا الدليل استخدام Ubuntu أو Debian على Hetzner.
إذا كنت تستخدم VPS آخر يعمل بنظام Linux، فطابق الحزم وفقًا لذلك.
للتدفق العام مع Docker، راجع Docker.
المسار السريع (للمشغلين ذوي الخبرة)
- وفّر Hetzner VPS
- ثبّت Docker
- استنسخ مستودع OpenClaw
- أنشئ أدلة مضيف دائمة
- اضبط
.envوdocker-compose.yml - ادمج الثنائيات المطلوبة في الصورة
docker compose up -d- تحقق من الاستمرارية والوصول إلى Gateway
ما تحتاجه
- Hetzner VPS مع وصول root
- وصول SSH من حاسوبك المحمول
- إلمام أساسي بـ SSH + النسخ/اللصق
- نحو 20 دقيقة
- Docker وDocker Compose
- اعتمادات مصادقة النموذج
- اعتمادات مزوّد اختيارية
- WhatsApp QR
- رمز بوت Telegram
- Gmail OAuth
توفير VPS
أنشئ VPS يعمل بنظام Ubuntu أو Debian في Hetzner.
اتصل كمستخدم root:
ssh root@YOUR_VPS_IPيفترض هذا الدليل أن VPS يحفظ الحالة. لا تتعامل معه كبنية تحتية قابلة للاستبدال.
تثبيت Docker (على VPS)
apt-get updateapt-get install -y git curl ca-certificatescurl -fsSL https://get.docker.com | shتحقق:
docker --versiondocker compose versionاستنساخ مستودع OpenClaw
git clone https://github.com/openclaw/openclaw.gitcd openclawيفترض هذا الدليل أنك ستبني صورة مخصصة لضمان استمرار الثنائيات.
إنشاء أدلة مضيف دائمة
حاويات Docker مؤقتة. يجب أن تعيش كل الحالة طويلة الأمد على المضيف.
mkdir -p /root/.openclaw/workspace # Set ownership to the container user (uid 1000):chown -R 1000:1000 /root/.openclawضبط متغيرات البيئة
أنشئ .env في جذر المستودع.
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/.openclawاضبط OPENCLAW_GATEWAY_TOKEN عندما تريد إدارة رمز Gateway المستقر
عبر .env؛ وإلا فاضبط gateway.auth.token قبل
الاعتماد على العملاء عبر عمليات إعادة التشغيل. إذا لم يكن أي من المصدرين موجودًا، يستخدم OpenClaw
رمزًا خاصًا بوقت التشغيل فقط لتلك البداية. أنشئ كلمة مرور لسلسلة المفاتيح والصقها
في GOG_KEYRING_PASSWORD:
openssl rand -hex 32لا تلتزم بهذا الملف في المستودع.
ملف .env هذا مخصص لبيئة الحاوية/وقت التشغيل مثل OPENCLAW_GATEWAY_TOKEN.
تعيش مصادقة OAuth/API-key المخزنة للمزوّد في
~/.openclaw/agents/<agentId>/agent/auth-profiles.json المثبت.
إعداد Docker Compose
أنشئ أو حدّث 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: # Recommended: keep the Gateway loopback-only on the VPS; access via SSH tunnel. # To expose it publicly, remove the `127.0.0.1:` prefix and firewall accordingly. - "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 مخصص فقط لراحة التمهيد، وليس بديلًا عن إعداد Gateway مناسب. مع ذلك اضبط المصادقة (gateway.auth.token أو كلمة مرور) واستخدم إعدادات ربط آمنة لنشرك.
خطوات وقت تشغيل Docker VM المشتركة
استخدم دليل وقت التشغيل المشترك لتدفق مضيف Docker الشائع:
وصول خاص بـ Hetzner
بعد خطوات البناء والتشغيل المشتركة، أكمل الإعداد التالي لفتح النفق:
المتطلب السابق: تأكد من أن إعداد sshd في VPS يسمح بإعادة توجيه TCP. إذا كنت
قد شددت إعداد SSH لديك، فتحقق من /etc/ssh/sshd_config واضبط:
AllowTcpForwarding localيسمح local بعمليات إعادة التوجيه المحلية ssh -L من حاسوبك المحمول مع حظر
عمليات إعادة التوجيه البعيدة من الخادم. سيؤدي ضبطه على no إلى فشل النفق
مع:
channel 3: open failed: administratively prohibited: open failed
بعد تأكيد تمكين إعادة توجيه TCP، أعد تشغيل خدمة SSH
(systemctl restart ssh) وشغّل النفق من حاسوبك المحمول:
ssh -N -L 18789:127.0.0.1:18789 root@YOUR_VPS_IPافتح:
http://127.0.0.1:18789/
الصق السر المشترك المضبوط. يستخدم هذا الدليل رمز Gateway افتراضيًا؛ إذا انتقلت إلى مصادقة كلمة المرور، فاستخدم تلك كلمة المرور بدلًا من ذلك.
توجد خريطة الاستمرارية المشتركة في وقت تشغيل Docker VM.
البنية التحتية ككود (Terraform)
للفرق التي تفضّل تدفقات عمل البنية التحتية ككود، يوفر إعداد Terraform المُدار من المجتمع:
- إعداد Terraform معياري مع إدارة حالة بعيدة
- توفيرًا آليًا عبر cloud-init
- نصوص نشر برمجية (تمهيد، نشر، نسخ احتياطي/استعادة)
- تعزيزًا أمنيًا (جدار ناري، UFW، وصول SSH فقط)
- إعداد نفق SSH للوصول إلى Gateway
المستودعات:
- البنية التحتية: openclaw-terraform-hetzner
- إعداد Docker: openclaw-docker-config
يكمل هذا النهج إعداد Docker أعلاه بعمليات نشر قابلة للتكرار، وبنية تحتية مضبوطة بالإصدارات، واستعادة آلية عند الكوارث.
الخطوات التالية
- إعداد قنوات المراسلة: القنوات
- ضبط Gateway: إعداد Gateway
- إبقاء OpenClaw محدّثًا: التحديث