dagu

用 YAML 编排脚本和 AI 代理,一个二进制搞定,无需数据库。

dagu 是一个本地优先的工作流编排器,专为那些主要工作并非编排的团队设计。它通过声明式 YAML 文件来定义工作流,能够编排脚本、SSH 命令、容器和 AI 代理,将工作流与业务逻辑分离。dagu 以单个二进制文件分发,无需数据库,易于部署和维护。它提供了类似 Airflow 的功能,但更加轻量,支持 Cron 调度、DAG 依赖管理、可持久化执行、人工审批环节(human-in-the-loop)以及 Web UI 用于监控和管理。dagu 旨在简化复杂任务的自动化,让团队能够快速构建和运行可靠的数据管道和 AI 工作流,而无需深入掌握复杂的编排系统。

开源 unknown 智能体
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 4069
维护状态 活跃
是否开源
定价模式 unknown

项目数据

分类智能体
开发团队dagucloud
所属国家
官网地址https://dagu.sh
定价模式unknown
价格说明定价信息待确认
访问状态
是否开源
开源协议GPL-3.0
主要语言Go
技术栈/模型agentic-workflows,ai-agents,ai-workflows,airflow-alternative,cron,dag,data-pipeline,devops,durable-execution,human-in-the-loop,job-scheduler,llm,mcp,mcp-gateway,mcp-server,self-hosted,task-automation,workflow-engine,workflow-orchestration,workflow-scheduler
GitHub 星标★ 4069
30天Star增速
HF 下载量
上线时间2022-04-22 00:00:00
最近更新2026-09-23 00:00:00
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数4

使用教程

难度:入门 约 10 分钟 部署方式:命令行工具 6 步

环境要求

  • Linux、macOS 或 Windows 系统
  • 无需外部数据库或消息代理(Dagu 自带内置 Web UI)
  • 使用 Docker 方式时需已安装 Docker
  • 使用 Kubernetes 方式时需安装 Helm 并具备支持 ReadWriteMany 的 StorageClass

安装与启动步骤

  1. 1脚本安装 Dagu

    macOS/Linux 下执行官方安装脚本,会启动向导,可将 Dagu 加入 PATH、设为后台服务并创建初始管理员账号。

    curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash
  2. 2或用 Homebrew 安装

    macOS/Linux 已装 Homebrew 时可直接安装;此方式不运行安装向导。

    brew install dagu
  3. 3编写工作流文件

    新建 hello.yaml,用声明式 YAML 定义 DAG 步骤,这里只有一个执行 echo 的步骤。

    cat > hello.yaml <<'EOF'
    steps:
      - id: hello
        run: echo "hello from Dagu"
    EOF
  4. 4运行工作流

    用 dagu start 执行指定 YAML 文件,终端会输出步骤执行结果。

    dagu start hello.yaml
  5. 5Docker 一键启动

    用官方镜像启动服务端、调度器和执行器,映射 8080 端口并挂载数据目录。

    docker run --rm -v ~/.dagu:/var/lib/dagu -p 8080:8080 ghcr.io/dagucloud/dagu:latest dagu start-all
  6. 6Helm 部署到 K8s

    先添加并更新 dagu 仓库,再安装 Chart,存储类需支持 ReadWriteMany。

    helm repo add dagu https://dagucloud.github.io/dagu
    helm repo update
    helm install dagu dagu/dagu --set persistence.storageClass=

关键配置

配置项必填说明示例
persistence.storageClassHelm 安装时指定支持 ReadWriteMany 的存储类nfs-rwx
steps[].run步骤中直接执行的 shell 命令echo "hello from Dagu"
steps[].action使用内置动作执行步骤,如运行容器docker.run
steps[].with.imagedocker.run 动作使用的容器镜像ghcr.io/acme/reporting:1.4.2
resources.limits限制工作流运行的 CPU 与内存资源cpu: 500m

如何确认成功

CLI 方式运行 hello.yaml 会输出 hello from Dagu;Docker 方式可访问 http://localhost:8080 打开 Web UI。

常见问题

Q:Dagu 需要安装数据库吗?

A:不需要。它是单个二进制、自带 Web UI,无需外部 DBMS 或消息代理即可运行。

Q:Docker 启动后能运行容器步骤吗?

A:默认命令不暴露宿主 Docker 守护进程,使用 container: 或 action: docker.run 的步骤需按文档额外配置 Docker 访问。

Q:支持哪些操作系统?

A:README 说明支持 Linux、macOS 和 Windows,Windows 可用 PowerShell 安装脚本。

Q:各安装方式有什么区别?

A:脚本安装会运行向导(配置 PATH、后台服务和初始管理员账号),Homebrew、npm、Docker、Helm 不带向导。

Q:能跑在 Kubernetes 上吗?

A:可以,通过 Helm Chart 安装,需要指定支持 ReadWriteMany 的 StorageClass。

注意事项

  • 脚本安装(macOS/Linux 与 Windows)会运行引导向导,其余安装方式不会。
  • Docker 运行方式若要执行容器步骤,需按官方文档配置 Docker 守护进程访问;挂载 Docker socket 会让工作流获得控制宿主守护进程的权限。
  • Helm 安装时必须把 替换为真实且支持 ReadWriteMany 的存储类。
  • 同一份工作流 YAML 可用于单机、临时 worker 和分布式 worker 三种部署形态。

核心亮点

  • 单二进制无数据库,部署零依赖,上手极快
  • 声明式 YAML 简洁直观,学习成本低,易于维护
  • 内置 Web UI 和人工审批,支持 AI 代理编排,贴合现代工作流

不足之处

  • 文档/社区待观察
  • 与成熟的 Airflow 相比,生态和插件较少

适用场景

  • 团队需要快速自动化脚本和命令,但不想引入重量级编排系统
  • 在本地或边缘环境编排任务,要求部署简单、资源占用低
  • 需要编排 AI 代理或 LLM 调用,并希望有人工审核环节

替代项目

Airflow、Prefect、Dagu

项目介绍

dagu 是自动化工作流领域的开源项目,由 dagucloud 开发,2022 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(4,069)位列前 30%,在自动化工作流分类中处于中上游。

近 45 天,它的 GitHub 星标从 3,719 增加到 4,069,净增 350。

项目目前处于活跃维护状态,最近一次代码更新于 2026-09-23。从国内网络环境看,可直接访问。

它主要面向的使用场景是:团队需要快速自动化脚本和命令,但不想引入重量级编排系统。同类可对比的替代方案包括 Airflow、Prefect、Dagu。

上一篇:kandev

下一篇:safari-mcp

同类项目推荐

n8n 开源

拖拽搭建自动化流程,轻松接入 AI 与 400+ 应用,搞定重复工作。

Fair-code workflow automation platform with native AI capabilities. Combine visual b···

★ 205700 2026-08-10
feishu-docx 开源

让 AI 代理轻松读写飞书文档,双向转换 Markdown

Feishu/Lark Docs、Sheet、Bitable <-> Markdown | AI Agent-friendly knowledge base exp···

★ 261 2026-08-09
robotcode 开源

让 Robot Framework 拥有现代 IDE 体验,调试、补全、运行一气呵成。

Open Source Toolkit for Robot Framework, providing Language Server Protocol support,···

★ 300 2026-08-10
puppeteer 开源

用 JavaScript 轻松操控无头浏览器,搞定自动化测试与网页抓取。

JavaScript API for Chrome and Firefox

★ 95609 2026-08-10