Repolode
dagucloud

dagucloud/dagu

Orquestador de workflows autoalojable que ejecuta scripts existentes, comandos SSH y contenedores desde YAML declarativo, como un único binario y sin base de datos.

Alternativa open source a:Airflow

Estrellas
4,391
Forks
378
Issues abiertos
113
Último commit
hace 20 horas

¿Qué es?

Dagu es un motor de workflows para operaciones y automatización interna. Defines DAGs en YAML que ejecutan comandos de shell, contenedores Docker, Kubernetes Jobs, comandos SSH y otras acciones, de modo que puedes usar scripts existentes sin modificarlos. Añade programación, dependencias, reintentos, pasos de aprobación humana, logs por paso e historial de ejecuciones.

Se distribuye como un único binario con una interfaz web integrada y guarda el estado en archivos locales, por lo que no necesita una base de datos ni un broker de mensajes externos. Funciona en Linux, macOS y Windows, desde un único servidor hasta una flota de workers distribuidos que se conectan a un coordinador mediante gRPC saliente.

El proyecto también incluye un servidor MCP integrado para inspeccionar y controlar workflows, control de acceso basado en roles, ocultación de secretos en los logs y un amplio conjunto de acciones integradas para bases de datos, S3, correo electrónico, HTTP y hojas de cálculo.

Funciones clave

  • 01Define workflows declarativos en YAML para ejecutar scripts de shell existentes, contenedores Docker, Kubernetes Jobs y comandos SSH.
  • 02Se distribuye como un único binario con una interfaz web integrada y sin necesidad de una base de datos externa.
  • 03Admite programación con cron, zonas horarias, políticas para ejecuciones solapadas y ventanas de recuperación.
  • 04Ofrece reintentos por paso, dependencias, ejecución en paralelo y sub-DAGs.
  • 05Incluye tareas humanas que pausan una ejecución hasta recibir una confirmación o una entrada de texto.
  • 06Ofrece RBAC, registro de auditoría, ocultación de secretos y un servidor MCP integrado.

Casos de uso

  • Sustituir tareas cron interdependientes por un DAG con reintentos, logs y un panel web.
  • Ejecutar comandos de mantenimiento en servidores remotos mediante SSH con un historial centralizado.
  • Orquestar pasos de ETL, como consultas SQL, comandos de dbt y scripts de extracción de datos.
  • Permitir que personal ajeno al equipo de ingeniería ejecute workflows de diagnóstico aprobados desde una interfaz de usuario.

Inicio rápido

  1. 1

    Instálalo con el script para macOS/Linux

    Instálalo siguiendo las instrucciones oficiales del README
  2. 2

    Crea hello.yaml con un único paso echo y luego ejecútalo

    dagu start hello.yaml
  3. 3

    Inicia el servidor y abre http://localhost:8080

    dagu start-all --dags .

Antes de usarlo

  • Algunas funciones opcionales, como SSO, RBAC y el registro de auditoría, requieren una licencia de autoalojamiento de pago.
  • La monitorización de Dagu Console está en fase beta.

Temas

Preguntas frecuentes

¿Qué es dagu?
Orquestador de workflows autoalojable que ejecuta scripts existentes, comandos SSH y contenedores desde YAML declarativo, como un único binario y sin base de datos. Dagu es un motor de workflows para operaciones y automatización interna. Defines DAGs en YAML que ejecutan comandos de shell, contenedores Docker, Kubernetes Jobs, comandos SSH y otras acciones, de modo que puedes usar scripts existentes sin modificarlos. Añade programación, dependencias, reintentos, pasos de aprobación humana, logs por paso e historial de ejecuciones.
¿dagu es gratuito? ¿Qué licencia tiene?
dagu es open source bajo la licencia GPL-3.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿dagu sigue mantenido?
Mantenimiento activo. El último commit de dagu fue el 19 oct 2026.
¿Para qué puedo usar dagu?
Sustituir tareas cron interdependientes por un DAG con reintentos, logs y un panel web. Ejecutar comandos de mantenimiento en servidores remotos mediante SSH con un historial centralizado. Orquestar pasos de ETL, como consultas SQL, comandos de dbt y scripts de extracción de datos. Permitir que personal ajeno al equipo de ingeniería ejecute workflows de diagnóstico aprobados desde una interfaz de usuario.
¿Cómo se instala dagu?
Instálalo con el script para macOS/Linux Crea hello.yaml con un único paso echo y luego ejecútalo: dagu start hello.yaml Inicia el servidor y abre http://localhost:8080: dagu start-all --dags .
¿Dónde consigo dagu?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/dagucloud/dagu

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados