−25%

على الدفع السنوي لـ Windows حتى 31 أكتوبر. عرض الخطط

EQVPS
ابدأ الآن

خادم VPS لـ Activepieces: أتمتة على خادمك

شغّل Activepieces، أداة بناء الأتمتة مفتوحة المصدر، على خادمك: بلا رسوم لكل مهمة، وwebhooks على نطاقك. تثبيت مُختبَر وفخ عنوان URL.

تحاسبك خدمات الأتمتة المستضافة على كل مهمة، ويدور العدّاد حتى على أشياء ليست عملًا أصلًا. تدفق يفحص خلاصة كل خمس دقائق يعني 8640 تشغيلًا شهريًا قبل أن يفعل أي شيء مفيد. شغّل التدفق نفسه على خادمك، وتصبح الفاتورة هي الخادم وحده.

أداة Activepieces منشئ أتمتة مفتوح المصدر: مشغّلات وخطوات وتفرّعات ومئات التكاملات الجاهزة، إضافة إلى خطوات الكود حين لا تكفي الجاهزة. النسخة المجتمعية مرخّصة بـ MIT وتعمل بلا مشاكل على خادم صغير واحد مع Docker Compose.

أي خطة

ثبّتناها على خادم اختبار وقِسنا. يشغّل ملف compose الافتراضي التطبيق وخمسة workers: نحو 2.6–3 GB من RAM مع Postgres وRedis. ومع worker واحد ينخفض إلى نحو 1.6 GB.

ما تشغّلهالخطة
بضعة تدفقات شخصية، worker واحدMicro-IP: ‏2 vCPU، ‏2 GB، ‏25 GB (10$ شهريًا)، أضف swap
الإعداد الافتراضي: خمسة workers، تدفقات الفريق، webhooksSmall-IP: ‏4 vCPU، ‏4 GB، ‏35 GB (16$ شهريًا)
تشغيلات كثيرة متزامنة، خطوات كود ثقيلةMedium-IP: ‏6 vCPU، ‏6 GB، ‏45 GB (20$ شهريًا)

اختر خطة بعنوان IPv4 خاص بها. الـwebhooks هي السبب الرئيسي لاستضافة هذه الأداة بنفسك، والخدمات التي تستدعيها يجب أن تصل إلى المنفذين 80 و443؛ وفي خطط NAT لا يمكن الوصول من الخارج إلا إلى منفذ SSH. الموقعان هما ألمانيا وفنلندا، ويظهر التوفر عند الطلب. يمكنك الدفع بالعملات المشفّرة، دون KYC.

التثبيت

وجّه أولًا نطاقًا — وليكن flows.example.com — إلى الخادم. ثم بصلاحيات root على Ubuntu 24.04 أو Debian 12:

curl -fsSL https://get.docker.com | sh
git clone --depth 1 https://github.com/activepieces/activepieces.git
cd activepieces
sh tools/deploy.sh

ينسخ deploy.sh الملف .env.example إلى .env ويملأ أسرارًا عشوائية. قبل التشغيل الأول غيّر سطرين في .env وسطرًا في ملف compose:

sed -i 's|^AP_FRONTEND_URL=.*|AP_FRONTEND_URL=https://flows.example.com|; s|^AP_TELEMETRY_ENABLED=.*|AP_TELEMETRY_ENABLED=false|' .env
sed -i "s|- '8080:80'|- '127.0.0.1:8080:80'|" docker-compose.yml

السطر الأول هو المهم. ليس AP_FRONTEND_URL للروابط في الواجهة فقط: فالـworkers يتصلون بالتطبيق عبره. اتركه على http://localhost:8080 وستبحث كل حاوية worker عن التطبيق داخل نفسها، فلا تجده، ولن تُنشر تدفقاتك أبدًا. هذا بالضبط ما واجهناه: «Socket.IO connection error» في سجلات الـworker، وطلب نشر معلّق، وwebhooks تردّ بـ 404. ومع النطاق الحقيقي نُشر التدفق نفسه وعمل الـwebhook.

يُبقي أمر sed على docker-compose.yml المنفذ 8080 على localhost. المنافذ التي ينشرها Docker تتجاوز ufw، ومن دون ذلك سيكون التطبيق مكشوفًا على منفذ عارٍ بجوار HTTPS لديك.

وعلى Micro-IP اكتفِ أيضًا بـ worker واحد:

sed -i 's/replicas: 5/replicas: 1/' docker-compose.yml

والآن HTTPS والتشغيل:

apt install -y caddy
cat > /etc/caddy/Caddyfile <<'EOF'
flows.example.com {
    reverse_proxy 127.0.0.1:8080
}
EOF
systemctl reload caddy
ufw allow 22/tcp && ufw allow 80/tcp && ufw allow 443/tcp && ufw enable
docker compose -p activepieces up -d

انتظر نصف دقيقة، ثم افتح https://flows.example.com وأنشئ حسابك فورًا. أول من يسجّل يملك المنصة؛ وبعد ذلك يصبح التسجيل بالدعوة فقط.

تأكّد من أن الـwebhooks تعمل

أنشئ تدفقًا بمشغّل Webhook (Catch Webhook)، وأضف أي خطوة، ثم انشره. تعرض لوحة المشغّل عنوان URL. أرسل إليه حدثًا تجريبيًا:

curl -X POST https://flows.example.com/api/v1/webhooks/YOUR_FLOW_ID \
  -H 'content-type: application/json' \
  -d '{"event":"payment.paid","amount":16}'

يجب أن تتلقى 200، ويظهر التشغيل في Runs على أنه ناجح. وإذا تلقيت 404 بدلًا من ذلك، فعد وتحقق من AP_FRONTEND_URL.

للتشغيل اليومي

  • التحديثات. يثبّت ملف compose إصدارًا محددًا (0.92.2 وقت الكتابة). غيّر الوسم في docker-compose.yml، ثم نفّذ docker compose -p activepieces pull && docker compose -p activepieces up -d. ألقِ نظرة على ملاحظات الإصدار أولًا؛ فأدوات الأتمتة تحب إعادة تسمية الأشياء.
  • النسخ الاحتياطية. تعيش التدفقات والاتصالات وسجل التشغيل في وحدة تخزين Postgres. خذ نسخة dump وفق جدول واحفظها خارج الخادم — فالاتصالات تحمل رموز API الخاصة بك لخدمات أخرى.
  • خطوات الكود غير معزولة في هذا الإعداد (AP_EXECUTION_MODE=UNSANDBOXED). الخادم خادمك والتدفقات تدفقاتك، لذا فهذا مقبول. ويتوقف عن أن يكون مقبولًا لحظة أن تسمح لأشخاص لا تثق بهم ببناء التدفقات.

إذا كنت تعرف n8n فالفكرة نفسها — انظر خادم VPS لـ n8n. اختر المحرّر الذي تفكر فيه بسهولة أكبر؛ فكلاهما يعمل جيدًا على الخطط نفسها.

ذو صلة

جاهز للنشر؟ ادفع بالعملات المشفّرة، بلا KYC — يعمل في نحو دقيقة.

← انشر الآن

الأسئلة الشائعة

كم RAM يحتاج Activepieces؟

يشغّل ملف docker-compose.yml الافتراضي التطبيق وخمسة workers؛ وعلى خادم الاختبار لدينا بلغ ذلك مع Postgres وRedis نحو 2.6–3 GB. ومع worker واحد نحو 1.6 GB. تشغّل خطة Small-IP (‏4 GB) الإعداد الافتراضي بهامش مريح؛ أما Micro-IP (‏2 GB) فلا تعمل إلا مع worker واحد وملف swap.

لا يُنشر التدفق ويردّ الـwebhook بـ 404. ما المشكلة؟

تحقق من AP_FRONTEND_URL. يصل الـworkers إلى التطبيق عبر هذا العنوان، وإذا بقي http://localhost:8080 فإن «localhost» داخل حاوية الـworker هو الـworker نفسه. لا يستطيعون الاتصال، فيتعلّق النشر وتُرجع الـwebhooks الرمز 404. ضع نطاقك الحقيقي مع https:// قبل التشغيل الأول.

هل أحتاج إلى عنوان IP مخصّص؟

نعم، إذا كنت تستخدم webhooks — ومعظم الناس يستخدمونها. يجب أن تصل الخدمات التي تستدعي تدفقاتك إلى المنفذين 80 و443 على نطاقك، وخطة NAT لا تستقبل من الخارج إلا منفذ SSH الخاص بك.

هل يستطيع أي شخص التسجيل في نسختي؟

الشخص الأول فقط. في اختبارنا نجح التسجيل الأول، وتلقى الثاني «User is not invited to the platform»: بعد الحساب الأول يصبح التسجيل بالدعوة فقط. لذا أنشئ حسابك فور تشغيل الموقع، قبل أن يصل أحد غيرك إلى الصفحة.

هل خطوات الكود معزولة؟

ليس افتراضيًا: يشغّل إعداد compose خطوات الكود مع AP_EXECUTION_MODE=UNSANDBOXED داخل الـworker مباشرة. لا بأس بذلك ما دام من يبني التدفقات أنت ومن تثق بهم فقط. لا تمنح الغرباء صلاحية الوصول إلى المحرّر في هذا الإعداد.

التعليقات

لا تعليقات بعد. كن الأول.

اترك تعليقًا

تُراجَع التعليقات قبل ظهورها.