در این صفحه
در این صفحه
Hosting
GCP
یک Gateway پایدار OpenClaw را با استفاده از Docker روی یک ماشین مجازی GCP Compute Engine اجرا کنید؛ بهگونهای که وضعیت ماندگار، فایلهای اجرایی تعبیهشده و رفتار راهاندازی مجدد ایمن داشته باشد.
قیمتگذاری بر اساس نوع ماشین و منطقه متفاوت است؛ کوچکترین ماشین مجازی متناسب با بار کاری خود را انتخاب کنید و اگر با خطاهای کمبود حافظه مواجه شدید، منابع را افزایش دهید.
میتوان از لپتاپ از طریق انتقال پورت SSH به Gateway دسترسی پیدا کرد، یا اگر دیواره آتش و توکنها را خودتان مدیریت میکنید، پورت را مستقیماً در دسترس قرار داد.
این راهنما از Debian روی GCP Compute Engine استفاده میکند. Ubuntu نیز کار میکند؛ بستهها را متناسب با آن جایگزین کنید. برای روند عمومی Docker، به Docker مراجعه کنید.
پیشنیازها
- حساب GCP (
e2-microواجد شرایط استفاده از سطح رایگان است) - CLI
gcloud، یا Cloud Console - دسترسی SSH از لپتاپ
- Docker و Docker Compose
- اعتبارنامههای احراز هویت مدل
- اعتبارنامههای اختیاری ارائهدهنده (کد QR WhatsApp، توکن ربات Telegram، OAuth Gmail)
- حدود 20-30 دقیقه
مسیر سریع
- یک پروژه GCP ایجاد و صورتحساب و Compute Engine API را فعال کنید
- یک ماشین مجازی Compute Engine ایجاد کنید (
e2-small، Debian 12، 20GB) - از طریق SSH وارد ماشین مجازی شوید و Docker را نصب کنید
- مخزن OpenClaw را کلون کنید
- دایرکتوریهای ماندگار میزبان را ایجاد کنید
.envوdocker-compose.ymlرا پیکربندی کنید- فایلهای اجرایی لازم را در ایمیج تعبیه کنید، بسازید و راهاندازی کنید
نصب gcloud CLI (یا استفاده از Console)
آن را از cloud.google.com/sdk/docs/install نصب کنید، سپس:
یا تمام مراحل زیر را از طریق رابط وب Cloud Console انجام دهید.
ایجاد پروژه GCP
صورتحساب را در console.cloud.google.com/billing فعال کنید (برای Compute Engine الزامی است).
معادل آن در Console: IAM & Admin > Create Project، صورتحساب را فعال کنید، سپس APIs & Services > Enable APIs > "Compute Engine API" > Enable.
ایجاد ماشین مجازی
| نوع | مشخصات | هزینه | توضیحات |
|---|---|---|---|
| e2-medium | 2 vCPU، 4GB RAM | ~$25/mo | مطمئنترین گزینه برای ساخت محلی Docker |
| e2-small | 2 vCPU، 2GB RAM | ~$12/mo | حداقل گزینه توصیهشده برای ساخت Docker |
| e2-micro | 2 vCPU (اشتراکی)، 1GB RAM | واجد شرایط سطح رایگان | اغلب ساخت Docker بهدلیل کمبود حافظه شکست میخورد (خروجی 137) |
ورود به ماشین مجازی از طریق SSH
در Console: در داشبورد Compute Engine، کنار ماشین مجازی روی "SSH" کلیک کنید.
انتشار کلید SSH پس از ایجاد ماشین مجازی ممکن است 1-2 دقیقه طول بکشد؛ اگر اتصال رد شد، صبر کنید و دوباره تلاش کنید.
نصب Docker (روی ماشین مجازی)
برای اعمال تغییر گروه، خارج شوید و دوباره وارد شوید، سپس مجدداً از طریق SSH متصل شوید:
بررسی کنید:
کلونکردن مخزن OpenClaw
این راهنما یک ایمیج سفارشی میسازد تا همه فایلهای اجرایی تعبیهشده در راهاندازیهای مجدد باقی بمانند.
ایجاد دایرکتوریهای ماندگار میزبان
کانتینرهای Docker موقتی هستند؛ تمام وضعیت بلندمدت باید روی میزبان نگهداری شود.
پیکربندی متغیرهای محیطی
فایل .env را در ریشه مخزن ایجاد کنید:
برای مدیریت توکن پایدار Gateway از طریق
.env، مقدار OPENCLAW_GATEWAY_TOKEN را تنظیم کنید؛ در غیر این صورت، پیش از اتکا به کلاینتها
در راهاندازیهای مجدد، gateway.auth.token را پیکربندی کنید. اگر هیچکدام تنظیم نشده باشد، OpenClaw برای
همان راهاندازی از توکنی استفاده میکند که فقط در زمان اجرا معتبر است. برای GOG_KEYRING_PASSWORD یک گذرواژه keyring ایجاد کنید:
این فایل را commit نکنید. این فایل شامل متغیرهای محیطی کانتینر/زمان اجرا مانند
OPENCLAW_GATEWAY_TOKEN است. احراز هویت ذخیرهشده OAuth/کلید API ارائهدهنده در
~/.openclaw/agents/<agentId>/agent/auth-profiles.json مونتشده قرار دارد.
پیکربندی Docker Compose
فایل docker-compose.yml را ایجاد یا بهروزرسانی کنید:
--allow-unconfigured فقط برای سهولت راهاندازی اولیه است و جایگزین پیکربندی واقعی Gateway نیست. همچنان احراز هویت (gateway.auth.token یا گذرواژه) و حالت اتصال ایمن را برای استقرار خود تنظیم کنید.
مراحل مشترک زمان اجرای ماشین مجازی Docker
برای روند مشترک میزبان Docker، راهنمای زمان اجرای مشترک را دنبال کنید:
نکات راهاندازی ویژه GCP
اگر ساخت هنگام pnpm install --frozen-lockfile با Killed یا exit code 137 شکست خورد، حافظه ماشین مجازی تمام شده است. حداقل از e2-small یا برای ساخت اولیه مطمئنتر از e2-medium استفاده کنید.
هنگام اتصال به LAN (OPENCLAW_GATEWAY_BIND=lan)، پیش از ادامه یک origin مرورگر مورد اعتماد پیکربندی کنید:
اگر پورت را تغییر دادهاید، 18789 را با پورت پیکربندیشده خود جایگزین کنید.
دسترسی از لپتاپ
برای انتقال پورت Gateway، یک تونل SSH ایجاد کنید:
http://127.0.0.1:18789/ را در مرورگر خود باز کنید.
یک پیوند پاک داشبورد را دوباره نمایش دهید:
اگر رابط کاربری برای احراز هویت با راز مشترک درخواست داد، توکن یا گذرواژه پیکربندیشده را در تنظیمات Control UI وارد کنید (این روند Docker بهطور پیشفرض یک توکن مینویسد؛ اگر به احراز هویت با گذرواژه تغییر دادهاید، بهجای آن از گذرواژه پیکربندیشده استفاده کنید).
اگر Control UI عبارت unauthorized یا disconnected (1008): pairing required را نشان داد، دستگاه مرورگر را تأیید کنید:
برای نقشه ماندگاری مشترک و روند بهروزرسانی، به زمان اجرای ماشین مجازی Docker مراجعه کنید.
عیبیابی
اتصال SSH رد شد
انتشار کلید SSH پس از ایجاد ماشین مجازی ممکن است 1-2 دقیقه طول بکشد. صبر کنید و دوباره تلاش کنید.
مشکلات OS Login
پروفایل OS Login خود را بررسی کنید:
مطمئن شوید حساب شما مجوزهای IAM لازم را دارد (Compute OS Login یا Compute OS Admin Login).
کمبود حافظه (OOM)
اگر ساخت Docker با Killed و exit code 137 شکست خورد، ماشین مجازی بهدلیل کمبود حافظه متوقف شده است:
حسابهای سرویس (روش برتر امنیتی)
برای استفاده شخصی، حساب کاربری پیشفرض شما بهخوبی کار میکند. برای خودکارسازی یا CI/CD، یک حساب سرویس اختصاصی با حداقل مجوزها ایجاد کنید:
برای خودکارسازی از نقش Owner استفاده نکنید؛ محدودترین نقشی را بهکار ببرید که نیاز شما را برآورده میکند. به آشنایی با نقشها مراجعه کنید.
مراحل بعدی
- کانالهای پیامرسانی را راهاندازی کنید: کانالها
- دستگاههای محلی را بهعنوان Node جفت کنید: Nodeها
- Gateway را پیکربندی کنید: پیکربندی Gateway