لماذا تستضيف Automatisch ذاتيًا على خادم VPS
الحجّة الكبرى لـ Automatisch هي الامتثال. فبينما يمرّر Zapier أو Make بياناتك عبر خوادم طرف ثالث كثيرًا ما تكون خارج الاتحاد الأوروبي، يضمن Automatisch بالاستضافة الذاتية ألّا يخرج شيء من خادم VPS الخاص بك. وبالنسبة لوكالة أو مكتب يتعامل مع بيانات شخصية للعملاء، تُعدّ هذه حجّة حاسمة تجاه GDPR. تبقى الأداة بسيطة عن قصد: مُطلِق (نموذج جديد، بريد إلكتروني جديد، webhook) ثم إجراء واحد أو أكثر (إرسال رسالة، إنشاء سطر، استدعاء واجهة API). النموذج مألوف لمن سبق له استخدام Zapier، ما يقلّص منحنى التعلّم. وعلى خادم VPS بعنوان IP ثابت، تبقى webhooks الواردة واتصالات OAuth مستقرة وخاصة.
الفوائد الملموسة للاستضافة الذاتية
- امتثال مُعزَّز لـ GDPR: لا تغادر البيانات خادمك أبدًا.
- اتصالات OAuth (Google، Slack، إلخ) مخزّنة مشفّرة لديك.
- واجهة مألوفة من نوع مُطلِق-إجراء، سهلة الاستخدام فورًا.
- لا فوترة حسب المهمة: الحجم لا يرفع الفاتورة.
- عنوان IP ثابت من أجل webhooks واردة موثوقة واستدعاءات OAuth مستقرة.
- شيفرة مفتوحة المصدر قابلة للتدقيق، مثالية لطمأنة العميل بشأن الأمان.
المتطلبات التقنية
يعتمد Automatisch على PostgreSQL وRedis لطابور المهام. يكفي خادم VPS بذاكرة 2 vCPU و2 غيغابايت RAM للبدء؛ وانتقل إلى 4 غيغابايت إن ضاعفتَ التدفقات النشطة وعمليات التنفيذ المتزامنة. جهّز 20 غيغابايت من القرص، وDocker وDocker Compose، ونطاقًا (flow.yourdomain.com) يشير إلى عنوان IP، والمنفذين 80/443 مفتوحين. ولاتصالات OAuth (Google، GitHub…)، ستحتاج أيضًا إلى تسجيل عنوان URL الخاص باستدعاء HTTPS في وحدة تحكم المطوّر لكل من الخدمات المعنية.
نشر Automatisch باستخدام Docker
تحضير الخادم VPS
عبر SSH، ثبّت Docker باستخدام curl -fsSL https://get.docker.com | sh، وأنشئ /opt/automatisch وانتقل إليه. احصل على ملف docker-compose.yml الرسمي من مستودع Automatisch على GitHub.
توليد مفتاح التشفير
يشفّر Automatisch الاتصالات المخزّنة. ولّد المفتاح: openssl rand -base64 36 وضعه في ENCRYPTION_KEY، إضافةً إلى APP_SECRET_KEY. هذه المفاتيح حيوية: احتفظ بنسخة احتياطية منها، فمن دونها تصبح اتصالاتك غير قابلة للقراءة.
ضبط عنوان URL وقاعدة البيانات
في ملف compose أو .env، اضبط APP_ENV=production وWEBHOOK_URL=https://flow.yourdomain.com وكلمة مرور PostgreSQL. تحقّق من أن الخدمتين postgres وredis مُعرَّفتان بشكل صحيح.
تشغيل الحزمة
شغّل docker compose up -d. تُطلق الخدمة main ترحيل قاعدة البيانات ثم خادم الويب، بينما تعالج خدمة worker المهام. تابع باستخدام docker compose logs -f main.
الوكيل العكسي وشهادة SSL
ضع Caddy أو Traefik أمامه: flow.yourdomain.com { reverse_proxy localhost:3000 }. HTTPS ضروري هنا، لأن استدعاءات OAuth للخدمات الطرف الثالث تتطلّب عنوان URL إعادة توجيه آمنًا.
إنشاء المسؤول وربط تطبيق
افتح عنوان URL، وأنشئ حساب المسؤول، ثم أضف أول اتصال (مثل webhook أو حساب Google). سجّل عنوان URL الخاص بالاستدعاء https://flow.yourdomain.com/... في وحدة تحكم الخدمة، واختبر تدفقًا كاملًا من نوع مُطلِق-إجراء.
احرص دائمًا على نسخ ENCRYPTION_KEY وقاعدة PostgreSQL احتياطيًا بالدقة نفسها. يشفّر المفتاح جميع اتصالات OAuth: فإن استعدت قاعدة بيانات على خادم جديد دون المفتاح الأصلي، ستصبح كل اتصالاتك غير قابلة للاستخدام وسيتعيّن إعادة ربط كل شيء. أنشئ عملية pg_dump يومية مؤتمتة (يمكنك في الواقع التحكم بها… عبر تدفق Automatisch) وخزّن النسخة المشفّرة خارج خادم VPS.