خفيف التشغيل
Dagu ملف ثنائي واحد بلا قاعدة بيانات أو وسيط رسائل أو control-plane stack إلزامي. ابدأ على جهاز واحد وأضف workers فقط عند الحاجة.
يحوّل Dagu السكربتات ومهام cron والحاويات ومهام HTTP ووظائف SQL والموافقات إلى نظام workflows مرئي واحد من دون أن يفرض عليك إعادة الكتابة.
يضيف المثبّت الموجّه Dagu إلى PATH، ويجهّز خدمة في الخلفية، وينشئ أول مسؤول حتى تبدأ تشغيل workflows.
لا حاجة إلى SDK. يبقى منطق العمل لديك كما هو.
ملف ثنائي واحد، بلا قاعدة بيانات أو وسيط رسائل إلزامي
شغّل السكربتات والحاويات ومهام SSH ونداءات HTTP
يعمل بالكامل دون اتصال. لا حاجة لخدمات خارجية.
مستضاف ذاتيًا افتراضيًا. تبقى الأتمتة الحالية كما هي. يضيف Dagu طبقة إشراف وتحكم للمشغّلين حولها.
Dagu ملف ثنائي واحد بلا قاعدة بيانات أو وسيط رسائل أو control-plane stack إلزامي. ابدأ على جهاز واحد وأضف workers فقط عند الحاجة.
شغّل الجداول، والاعتماديات، وإعادة المحاولة، والطوابير، والمعلمات، والأسرار، والإشعارات، وخطوات SSH، وخطوات الحاويات، ووظائف SQL، والتنفيذ الموزع في YAML مقروء.
تبقى سكربتاتك وخدماتك وSQL والحاويات والأوامر التشغيلية كما هي. ينسّق Dagu حولها بدلًا من فرض framework أو SDK داخل قاعدة الكود.
يحصل كل تشغيل على حالة وسجلات وتاريخ وتوقيت وعرض مرئي للـ workflow، حتى لا تختفي jobs داخل crontabs وسجلات الخوادم.
نماذج النشر
شغل Dagu محليا، او استضفه ذاتيا، او استخدم managed server، او اجمع cloud operations مع private execution.
محلي
شغل `dagu start-all` على جهاز واحد مع حالة محفوظة في ملفات محلية. لا تحتاج database او broker او platform stack.
استضافة ذاتية
ابق Dagu server و workers و secrets و logs و execution داخل بيئتك.
Dagu Cloud
استخدم dedicated Dagu server تديره Dagu Cloud داخل isolated gVisor instance على GKE.
هجين
دع Dagu Cloud تدير server بينما تشغل private workers خطوات Docker او private-network او data-local.
Hybrid execution
يبقي Hybrid خادم Dagu managed بينما تبقى execution التي تحتاج شبكتك او runtime او data تحت سيطرتك.
تراجع الفرق معدل التنفيذ، والطوابير، والاسترداد، والحوكمة، والوصول عبر API، وتنفيذ workers قبل نقل المهام المتفرقة إلى طبقة تحكم واحدة.
شغّل آلاف تشغيلات workflow يوميًا على جهاز واحد حسب العتاد وشكل workflow ومدة الخطوات وإعدادات الطوابير.
استخدم الطوابير وحدود التوازي وworkers موزعين للتحكم في الحمل وتوزيع jobs على عدة أجهزة.
تجعل cron schedules وcatchup وdurable automatic retries وtimeouts وreruns وسكربتات event handler وإشعارات البريد الأعطال قابلة للإدارة.
استخدم إدارة المستخدمين وRBAC وworkspaces والموافقات والأسرار وREST API وCLI وwebhooks لتشغيل workflows إنتاج مشتركة.
حالات الاستخدام
فهرس عملي للعمل التشغيلي الذي يبدأ كسكربتات ومهام cron ومهام ad hoc، ثم يحتاج إلى نظام workflows يمكن للناس تشغيله وتتبع مساره.
يناسب Dagu الفرق التي لديها عمل تشغيلي موزّع بالفعل بين الأوامر والسكربتات والحاويات ووظائف SQL ومهام HTTP والخوادم البعيدة، ثم تحتاج إلى طريقة أوضح للجدولة وإعادة المحاولة والمراقبة والإدارة.
احتفظ بالأوامر الموجودة. وأضف حولها الرؤية، وإعادة المحاولة، والموافقات، وتاريخ التشغيل.
مثال / عمل cron مخفي
انقل سكربتات shell وPython وطلبات HTTP والمهام المجدولة الحالية إلى Dagu من دون إعادة كتابتها.
تتحول بيئات cron المخفية إلى workflows مرئية قابلة لإعادة المحاولة مع سجلات واعتماديات وتاريخ وأدوات تحكم للمشغّلين.
يبقى سير العمل ملموسًا بما يكفي للمهندسين ومرئيًا بما يكفي للمشغّلين.
مهام يومية قابلة للصيانة
شغّل استعلامات PostgreSQL أو SQLite ونقل S3 وتحويلات jq وخطوات التحقق وsub-workflows قابلة لإعادة الاستخدام.
تبقى workflows البيانات اليومية تعريفية وقابلة للمراقبة وسهلة الإعادة عندما تفشل خطوة واحدة.
عمل وسائط موزع
شغّل ffmpeg واستخراج المصغرات وتطبيع الصوت ومعالجة الصور والمهام الثقيلة الأخرى على workers.
يمكن أن يعمل تحويل الوسائط عبر workers موزعين بينما تبقى الحالة والتاريخ والسجلات والآثار في طبقة تخزين واحدة للمراقبة والتصحيح وإعادة المحاولة.
مهام بعيدة مجدولة
نسّق نسخ SSH الاحتياطية والتنظيف وسكربتات النشر ونوافذ التصحيح وفحوصات الشروط المسبقة وlifecycle hooks.
تحصل العمليات البعيدة على الجداول وإعادة المحاولة والتنبيهات وسجلات كل خطوة من دون أن يحتاج المشغلون إلى SSH في كل عملية استعادة.
مسارات عمل أصلية للحاويات
كوّن workflows يمكن لكل خطوة فيها تشغيل Docker image أو Kubernetes Job أو أمر shell أو خطوة تحقق.
يمكن توجيه المهام المعتمدة على الصور إلى workers المناسبين من دون بناء control plane مخصص حول الحاويات.
عمليات لغير المهندسين
شغّل التشخيص وإصلاح الحسابات وفحوصات البيانات والإجراءات التي تحتاج موافقة من واجهة ويب بسيطة.
يمكن لغير المهندسين تشغيل workflows تمت مراجعتها، بينما تبقى الأوامر والسجلات والنتائج قابلة للتتبع لدى المهندسين.
أجهزة صغيرة وتشغيل مرئي
شغّل قراءة الحساسات والتنظيف المحلي والمزامنة دون اتصال وفحوصات الصحة وصيانة الأجهزة على أجهزة صغيرة.
يعمل الملف التنفيذي الواحد والحالة المعتمدة على الملفات جيدًا على أجهزة الحافة مع بقاء الرؤية عبر واجهة الويب.
عمليات مدعومة بالذكاء الاصطناعي اختيارياً
شغّل وكلاء ترميز الذكاء الاصطناعي وواجهات CLI للوكلاء وworkflows مكتوبة بواسطة الوكلاء وتحليل السجلات وخطوات الإصلاح والأتمتة التي يراجعها البشر عندما تكون مساعدة النماذج مفيدة.
يبقى الذكاء الاصطناعي قدرة ثانوية داخل الـ workflow بدل أن يتحول إلى الشيء الذي يشغّل كل شيء.
الخيط المشترك
اجمع السكربتات وjobs المجدولة ومهام الخوادم والأتمتة المتحكَّم بها في محرك workflow واحد.
حوّل سكربتات shell وأوامر Docker ومهام SSH ونداءات HTTP الموجودة إلى workflows موثوقة.
steps:
- name: health-check
command: curl -sf http://app:8080/health
- name: backup
type: ssh
config:
host: db-server
user: admin
command: pg_dump mydb > /backups/daily.sql
- name: notify
type: http
config:
url: "https://hooks.slack.com/..."
method: POST
body: '{"text": "Backup complete"}'
مشغّل ذكاء اصطناعي دائم لـ Slack وTelegram.
صحّح الأعطال، ووافق على الإجراءات، وتعامل مع الحوادث دون مغادرة المحادثة.
يركّز Dagu على طبقة الإنتاج حول عملك الموجود: الجداول، والاعتماديات، وإعادة المحاولة، والسجلات، والطوابير، والتنفيذ المتحكَّم به.
ثبّت Dagu باستخدام المُثبّت الإرشادي، ثم أكمل من دليل التثبيت الكامل أو وثائق البداية السريعة.
مثبتات السكربت هي الطريق الموصى به. ما زال Homebrew وnpm وDocker متاحين، لكنهم يثبتون فقط الملف التنفيذي أو الحاوية.
يمكن للمُثبّت الإرشادي إكمال إعداد التشغيل الأولي لك.
ناقش الاستخدام، أبلغ عن issues، وتابع التطوير.