دليل النشر

تثبيت Windmill على خادم VPS: أتمتة ذاتية الاستضافة

انشر على VPS Cloud →

الأتمتة5 دقيقة قراءة

تثبيت Windmill على خادم VPS: أتمتة ذاتية الاستضافة

Windmill منصة مفتوحة المصدر تحوّل الشيفرة (Python وTypeScript وGo وBash وSQL) إلى سير عمل وواجهات API وواجهات داخلية. مُصمّمة للمطوّرين، وتجمع بين مرونة الشيفرة وسرعة الـ no-code. باستضافتها الذاتية على خادم VPS، تصبح محرّك الأتمتة لديك وأداة بناء التطبيقات الداخلية، دون الاعتماد على خدمة SaaS.

‏لماذا تستضيف Windmill ذاتيًا على VPS

‏‏تعمل Windmill باستمرار على خادمك وتكشف كل نصّ برمجي كـ REST API موقَّعة أو مهمة مجدوَلة أو واجهة مستخدم مولَّدة تلقائيًا. خلافًا للدوال serverless، لا تأخير في البدء البارد ولا حدود تنفيذ يفرضها طرف ثالث. تصل نصوصك البرمجية بـ Python وTypeScript وBash مباشرةً إلى قواعد البيانات والخدمات الداخلية في VPS دون المرور بـ gateway سحابية. المحرك مكتوب بـ Rust: يستهلك أقل من 100 ميغابايت RAM في وضع الخمول ويبدأ في ثوانٍ حتى على أصغر VPS Cloud.

‏فوائد الاستضافة الذاتية الملموسة

  • ‏لا تكلفة لكل تنفيذ: آلاف الوظائف يوميًا دون فاتورة سحابية.
  • ‏وصول مباشر إلى قواعد بيانات VPS والخدمات الداخلية دون نفق.
  • ‏الأسرار ومفاتيح API مخزَّنة في Windmill ولا تغادر خادمك أبدًا.
  • ‏نماذج إدخال ونقاط REST مولَّدة تلقائيًا لكل نص برمجي.
  • ‏workers إضافية تُضاف لحظيًا لاستيعاب ذرى الحِمل.
  • ‏نسخ Git مدمج — كل تعديل على النص قابل للتتبع.

‏المتطلبات التقنية

‏تحتاج Windmill إلى 2 vCPU و4 غيغابايت RAM على الأقل لتشغيل الخادم مع عامل افتراضي وعامل native مقابل PostgreSQL 16. خصّص 10 غيغابايت من القرص للسجلات وذاكرة التخزين المؤقت للـ worker وأحجام قاعدة البيانات. يكفي Ubuntu 22.04 أو 24.04 مع Docker المثبَّت. لا حاجة لـ GPU. إن كنت تخطط لتشغيل workers Python ثقيلة (تعلم آلي، pandas على مجموعات بيانات كبيرة)، اختر 4 vCPU و8 غيغابايت RAM.

‏نشر Windmill باستخدام Docker Compose

01

‏استنساخ المستودع الرسمي

‏اتصل بـ VPS عبر SSH واسحب docker-compose.yml الرسمي:

git clone https://github.com/windmill-labs/windmill.git && cd windmill

‏للإنتاج، ثبّت إصدارًا مستقرًا (راجع إصدارات GitHub). فرع main مستقر لكنه قد يتضمن تصحيحات قيد الاختبار.

02

‏توليد أسرار البيئة

‏انسخ .env.example إلى .env وأدخل المتغيرات:

cp .env.example .env

‏لـ DATABASE_URL، يمكنك استخدام PostgreSQL المضمَّن في الـ stack (--profiles pg up) أو التأشير على نسخة قائمة. اضبط BASE_URL على https://your-domain.com — تستخدمه Windmill لتوقيع webhook وبناء URLs الاستدعاء الراجع للـ flows.

03

‏تشغيل الـ stack

‏شغّل الخادم والعامل الافتراضي والعامل native:

docker compose --profile pg up -d

‏تحقق من أن الحاويات الأربع في حالة Up بـ docker compose ps. يستمع الخادم على المنفذ 8000 على الواجهة المحلية.

04

‏إعداد وكيل nginx العكسي

‏تكشف Windmill المنفذ 8000 على 127.0.0.1. هيّئ nginx للتوكيل وإنهاء TLS:

location / {
    proxy_pass http://127.0.0.1:8000;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host $host;
}

‏رؤوس Upgrade وConnection ضرورية لـ WebSockets التي يستخدمها المحرر في الوقت الفعلي.

05

‏تسجيل الدخول والتأمين

‏افتح https://your-domain.com، وسجّل الدخول بـ [email protected] / changeme، ثم انتقل إلى الإعدادات → المستخدمون لتعيين كلمة مرور قوية وتغيير البريد الإداري إن شئت. ترك المحرر مفتوحًا دون مصادقة هو الثغرة الأكثر شيوعًا على نسخ Windmill المعرَّضة للعموم.

نشرها بنقرة واحدة من Marketplace ServOrbit. إن كنت تفضّل تجاوز الإعداد اليدوي، يوفّر Marketplace من ServOrbit Windmill تلقائيًا — الخادم وعاملان وPostgreSQL 16 ووكيل nginx عكسي وشهادة Let's Encrypt — في بضع دقائق. يعرض قسم «الوصول الأول» في منطقة عملائك الرابطَ والبيانات المولَّدة. توجّه إلى [بطاقة Windmill](/marketplace/automatisation/windmill) للبدء.

‏انشر Windmill بنقرة واحدة على VPS من ServOrbit

‏يوفّر Marketplace من ServOrbit Windmill تلقائيًا مع PostgreSQL 16 وعاملَين ووكيل عكسي — تعمل نصوصك البرمجية في الإنتاج خلال دقائق، دون أي إعداد.

بحاجة إلى مساعدة؟

تصفّح مركز المساعدة والأسئلة الشائعة، أو تواصل مع فريقنا — معاودة اتصال أو WhatsApp أو بريد إلكتروني. الدعم بـ العربية والفرنسية والإنجليزية.