Repolode
dagucloud

dagucloud/dagu

Orquestrador de workflows auto-hospedável que executa scripts existentes, comandos SSH e containers a partir de YAML declarativo, como um único binário e sem banco de dados.

Alternativa open source a:Airflow

Estrelas
4,391
Forks
378
Issues abertas
113
Último commit
há 20 horas

O que é?

Dagu é um mecanismo de workflows para operações e automação interna. Você define DAGs em YAML que executam comandos shell, containers Docker, Jobs do Kubernetes, comandos SSH e outras ações, permitindo usar scripts existentes sem modificá-los. Ele adiciona agendamento, dependências, novas tentativas, etapas de aprovação humana, logs por etapa e histórico de execuções.

Ele é distribuído como um único binário, com uma Web UI integrada, e armazena o estado em arquivos locais, sem precisar de banco de dados externo nem de broker de mensagens. Funciona em Linux, macOS e Windows, desde um único servidor até uma frota de workers distribuídos que consultam um coordenador via gRPC de saída.

O projeto também inclui um servidor MCP integrado para inspecionar e controlar workflows, controle de acesso baseado em funções, ocultação de secrets nos logs e um amplo conjunto de ações integradas para bancos de dados, S3, e-mail, HTTP e planilhas.

Recursos principais

  • 01Define workflows em YAML declarativo que orquestram scripts shell existentes, containers Docker, Jobs do Kubernetes e comandos SSH.
  • 02É distribuído como um único binário, com Web UI integrada e sem banco de dados externo.
  • 03Oferece agendamento cron com fusos horários, políticas para execuções sobrepostas e janelas para recuperar execuções perdidas.
  • 04Oferece novas tentativas por etapa, dependências, execução paralela e sub-DAGs.
  • 05Inclui tarefas humanas que pausam uma execução para aguardar confirmação ou uma entrada de texto.
  • 06Oferece RBAC, logs de auditoria, ocultação de secrets e um servidor MCP integrado.

Casos de uso

  • Substituir cron jobs interdependentes por um DAG com novas tentativas, logs e um dashboard web.
  • Executar comandos de manutenção em servidores remotos via SSH com histórico centralizado.
  • Orquestrar etapas de ETL, como consultas SQL, comandos dbt e scripts de extração de dados.
  • Permitir que equipes que não são de engenharia executem workflows de diagnóstico aprovados pela UI.

Início rápido

  1. 1

    Instale com o script para macOS/Linux

    Instale seguindo as instruções oficiais do README
  2. 2

    Crie hello.yaml com uma única etapa echo e depois execute-o

    dagu start hello.yaml
  3. 3

    Inicie o servidor e abra http://localhost:8080

    dagu start-all --dags .

Antes de usar

  • Alguns recursos opcionais, como SSO, RBAC e registro de auditoria, exigem uma licença paga para hospedagem própria.
  • O monitoramento do Dagu Console está em beta.

Tópicos

Perguntas frequentes

O que é dagu?
Orquestrador de workflows auto-hospedável que executa scripts existentes, comandos SSH e containers a partir de YAML declarativo, como um único binário e sem banco de dados. Dagu é um mecanismo de workflows para operações e automação interna. Você define DAGs em YAML que executam comandos shell, containers Docker, Jobs do Kubernetes, comandos SSH e outras ações, permitindo usar scripts existentes sem modificá-los. Ele adiciona agendamento, dependências, novas tentativas, etapas de aprovação humana, logs por etapa e histórico de execuções.
dagu é gratuito? Qual é a licença?
dagu é open source sob a licença GPL-3.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
dagu ainda é mantido?
Manutenção ativa. O último commit de dagu foi em 19 de out. de 2026.
Para que posso usar dagu?
Substituir cron jobs interdependentes por um DAG com novas tentativas, logs e um dashboard web. Executar comandos de manutenção em servidores remotos via SSH com histórico centralizado. Orquestrar etapas de ETL, como consultas SQL, comandos dbt e scripts de extração de dados. Permitir que equipes que não são de engenharia executem workflows de diagnóstico aprovados pela UI.
Como instalar dagu?
Instale com o script para macOS/Linux Crie hello.yaml com uma única etapa echo e depois execute-o: dagu start hello.yaml Inicie o servidor e abra http://localhost:8080: dagu start-all --dags .
Onde consigo dagu?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/dagucloud/dagu

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados