طبقة التحكم المستضافة ذاتيًا لأتمتة العمليات التي تشغّلها بالفعل.

يحوّل Dagu السكربتات ومهام cron والحاويات ومهام HTTP ووظائف SQL والموافقات إلى نظام workflows مرئي واحد من دون أن يفرض عليك إعادة الكتابة.

dagu server --port 8080
تثبيت أمر dagu
$curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash

يضيف المثبّت الموجّه Dagu إلى PATH، ويجهّز خدمة في الخلفية، وينشئ أول مسؤول حتى تبدأ تشغيل workflows.

غير متطفل

لا حاجة إلى SDK. يبقى منطق العمل لديك كما هو.

خفيف

ملف ثنائي واحد، بلا قاعدة بيانات أو وسيط رسائل إلزامي

Command-native

شغّل السكربتات والحاويات ومهام SSH ونداءات HTTP

جاهز للعمل المعزول

يعمل بالكامل دون اتصال. لا حاجة لخدمات خارجية.

workflow.yaml
# Existing scripts, now production workflows
name: "daily-ops"
schedule: "0 2 * * *"

steps:
- name: "backup-db"
command: "./scripts/backup-postgres.sh"
output: BACKUP_PATH

- name: "upload-backup"
command: "aws s3 cp $${BACKUP_PATH} s3://backups/"
depends: backup-db

- name: "notify"
type: http
depends: upload-backup

أنواع خطوات workflow الشائعة

لماذا تختار فرق العمليات Dagu

مستضاف ذاتيًا افتراضيًا. تبقى الأتمتة الحالية كما هي. يضيف Dagu طبقة إشراف وتحكم للمشغّلين حولها.

خفيف التشغيل

Dagu ملف ثنائي واحد بلا قاعدة بيانات أو وسيط رسائل أو control-plane stack إلزامي. ابدأ على جهاز واحد وأضف workers فقط عند الحاجة.

مصمم لأتمتة العمليات المختلطة

شغّل الجداول، والاعتماديات، وإعادة المحاولة، والطوابير، والمعلمات، والأسرار، والإشعارات، وخطوات SSH، وخطوات الحاويات، ووظائف SQL، والتنفيذ الموزع في YAML مقروء.

هجرة من دون إعادة كتابة

تبقى سكربتاتك وخدماتك وSQL والحاويات والأوامر التشغيلية كما هي. ينسّق Dagu حولها بدلًا من فرض framework أو SDK داخل قاعدة الكود.

رؤية تشغيلية افتراضيًا

يحصل كل تشغيل على حالة وسجلات وتاريخ وتوقيت وعرض مرئي للـ workflow، حتى لا تختفي jobs داخل crontabs وسجلات الخوادم.

نماذج النشر

شغل Dagu محليا، او استضفه ذاتيا، او استخدم managed server، او اجمع cloud operations مع private execution.

ابدأ على جهاز واحد. ثم توسع الى self-hosted او managed او hybrid.

محلي

خادم واحد

شغل `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

Managed Dagu server
Private worker عبر mTLS
Docker و private APIs و secrets و data-local work

يبقي Hybrid خادم Dagu managed بينما تبقى execution التي تحتاج شبكتك او runtime او data تحت سيطرتك.

ما الذي ينبغي التحقق منه قبل استبدال الأتمتة المتفرقة

تراجع الفرق معدل التنفيذ، والطوابير، والاسترداد، والحوكمة، والوصول عبر API، وتنفيذ workers قبل نقل المهام المتفرقة إلى طبقة تحكم واحدة.

آلاف/يوم

Throughput على عقدة واحدة

شغّل آلاف تشغيلات workflow يوميًا على جهاز واحد حسب العتاد وشكل workflow ومدة الخطوات وإعدادات الطوابير.

Queues + workers

وسّع التنفيذ بأمان

استخدم الطوابير وحدود التوازي وworkers موزعين للتحكم في الحمل وتوزيع jobs على عدة أجهزة.

Catchup + retry

استعد العمل المجدول

تجعل cron schedules وcatchup وdurable automatic retries وtimeouts وreruns وسكربتات event handler وإشعارات البريد الأعطال قابلة للإدارة.

Users + API

شغّل كفريق

استخدم إدارة المستخدمين وRBAC وworkspaces والموافقات والأسرار وREST API وCLI وwebhooks لتشغيل workflows إنتاج مشتركة.

حالات الاستخدام

فهرس عملي للعمل التشغيلي الذي يبدأ كسكربتات ومهام cron ومهام ad hoc، ثم يحتاج إلى نظام workflows يمكن للناس تشغيله وتتبع مساره.

حالات استخدام تشغيلية

يناسب Dagu الفرق التي لديها عمل تشغيلي موزّع بالفعل بين الأوامر والسكربتات والحاويات ووظائف SQL ومهام HTTP والخوادم البعيدة، ثم تحتاج إلى طريقة أوضح للجدولة وإعادة المحاولة والمراقبة والإدارة.

احتفظ بالأوامر الموجودة. وأضف حولها الرؤية، وإعادة المحاولة، والموافقات، وتاريخ التشغيل.

01

مثال / عمل cron مخفي

إدارة Cron والسكربتات القديمة

انقل سكربتات shell وPython وطلبات HTTP والمهام المجدولة الحالية إلى Dagu من دون إعادة كتابتها.

تتحول بيئات cron المخفية إلى workflows مرئية قابلة لإعادة المحاولة مع سجلات واعتماديات وتاريخ وأدوات تحكم للمشغّلين.

يبقى سير العمل ملموسًا بما يكفي للمهندسين ومرئيًا بما يكفي للمشغّلين.

02

مهام يومية قابلة للصيانة

ETL وعمليات البيانات

شغّل استعلامات PostgreSQL أو SQLite ونقل S3 وتحويلات jq وخطوات التحقق وsub-workflows قابلة لإعادة الاستخدام.

تبقى workflows البيانات اليومية تعريفية وقابلة للمراقبة وسهلة الإعادة عندما تفشل خطوة واحدة.

03

عمل وسائط موزع

تحويل الوسائط

شغّل ffmpeg واستخراج المصغرات وتطبيع الصوت ومعالجة الصور والمهام الثقيلة الأخرى على workers.

يمكن أن يعمل تحويل الوسائط عبر workers موزعين بينما تبقى الحالة والتاريخ والسجلات والآثار في طبقة تخزين واحدة للمراقبة والتصحيح وإعادة المحاولة.

04

مهام بعيدة مجدولة

أتمتة البنية التحتية والخوادم

نسّق نسخ SSH الاحتياطية والتنظيف وسكربتات النشر ونوافذ التصحيح وفحوصات الشروط المسبقة وlifecycle hooks.

تحصل العمليات البعيدة على الجداول وإعادة المحاولة والتنبيهات وسجلات كل خطوة من دون أن يحتاج المشغلون إلى SSH في كل عملية استعادة.

05

مسارات عمل أصلية للحاويات

Workflows للحاويات وKubernetes

كوّن workflows يمكن لكل خطوة فيها تشغيل Docker image أو Kubernetes Job أو أمر shell أو خطوة تحقق.

يمكن توجيه المهام المعتمدة على الصور إلى workers المناسبين من دون بناء control plane مخصص حول الحاويات.

06

عمليات لغير المهندسين

أتمتة دعم العملاء

شغّل التشخيص وإصلاح الحسابات وفحوصات البيانات والإجراءات التي تحتاج موافقة من واجهة ويب بسيطة.

يمكن لغير المهندسين تشغيل workflows تمت مراجعتها، بينما تبقى الأوامر والسجلات والنتائج قابلة للتتبع لدى المهندسين.

07

أجهزة صغيرة وتشغيل مرئي

Workflows لإنترنت الأشياء والحافة

شغّل قراءة الحساسات والتنظيف المحلي والمزامنة دون اتصال وفحوصات الصحة وصيانة الأجهزة على أجهزة صغيرة.

يعمل الملف التنفيذي الواحد والحالة المعتمدة على الملفات جيدًا على أجهزة الحافة مع بقاء الرؤية عبر واجهة الويب.

08

عمليات مدعومة بالذكاء الاصطناعي اختيارياً

Workflows لوكلاء الذكاء الاصطناعي

شغّل وكلاء ترميز الذكاء الاصطناعي وواجهات CLI للوكلاء وworkflows مكتوبة بواسطة الوكلاء وتحليل السجلات وخطوات الإصلاح والأتمتة التي يراجعها البشر عندما تكون مساعدة النماذج مفيدة.

يبقى الذكاء الاصطناعي قدرة ثانوية داخل الـ workflow بدل أن يتحول إلى الشيء الذي يشغّل كل شيء.

الخيط المشترك

YAML بسيطأي أمرDocker و Kubernetes JobsSSHالجداولإعادة المحاولةالسجلاتالإشعارات

أنماط workflow شائعة

اجمع السكربتات وjobs المجدولة ومهام الخوادم والأتمتة المتحكَّم بها في محرك workflow واحد.

Health Check
SSH Backup
Notify

Workflows للسكربتات

حوّل سكربتات shell وأوامر Docker ومهام SSH ونداءات HTTP الموجودة إلى workflows موثوقة.

  • 1أبقِ السكربتات والأوامر الموجودة كما هي
  • 2شغّل الحاويات ومهام SSH وخطوات HTTP داخل DAG واحد
  • 3استخدم الاعتماديات بدل سلاسل أوامر هشّة
  • 4أعد محاولة الخطوات الفاشلة مع سجلات وتاريخ واضحين
workflow.yaml
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"}'

Workflow Operator لـ Slack وTelegram

مشغّل ذكاء اصطناعي دائم لـ Slack وTelegram.صحّح الأعطال، ووافق على الإجراءات، وتعامل مع الحوادث دون مغادرة المحادثة.

DaguDagu
رسالة...

ميزات محرك workflow للعمليات الحقيقية

يركّز Dagu على طبقة الإنتاج حول عملك الموجود: الجداول، والاعتماديات، وإعادة المحاولة، والسجلات، والطوابير، والتنفيذ المتحكَّم به.

دليل البدء السريع

ثبّت Dagu باستخدام المُثبّت الإرشادي، ثم أكمل من دليل التثبيت الكامل أو وثائق البداية السريعة.

1

تثبيت أمر dagu

مثبتات السكربت هي الطريق الموصى به. ما زال Homebrew وnpm وDocker متاحين، لكنهم يثبتون فقط الملف التنفيذي أو الحاوية.

Mac/Linux الطرفية
$curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash
✓ المُثبّت الإرشادي جاهز
2

الخطوات التالية

يمكن للمُثبّت الإرشادي إكمال إعداد التشغيل الأولي لك.

# ما الذي يستطيع المُثبّت فعله
إضافة Dagu إلى PATH
إعداد خدمة تعمل في الخلفية
إنشاء أول مسؤول والتحقق منه

مجتمع المشروع

ناقش الاستخدام، أبلغ عن issues، وتابع التطوير.