项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 4558
使用教程
环境要求
- Linux、macOS 或 Windows 系统
- 无需外部数据库或消息代理(Dagu 自带内置 Web UI)
- 使用 Docker 方式时需已安装 Docker
- 使用 Kubernetes 方式时需安装 Helm 并具备支持 ReadWriteMany 的 StorageClass
安装与启动步骤
-
1脚本安装 Dagu
macOS/Linux 下执行官方安装脚本,会启动向导,可将 Dagu 加入 PATH、设为后台服务并创建初始管理员账号。
curl -fsSL https://raw.githubusercontent.com/dagucloud/dagu/main/scripts/installer.sh | bash -
2或用 Homebrew 安装
macOS/Linux 已装 Homebrew 时可直接安装;此方式不运行安装向导。
brew install dagu -
3编写工作流文件
新建 hello.yaml,用声明式 YAML 定义 DAG 步骤,这里只有一个执行 echo 的步骤。
cat > hello.yaml <<'EOF' steps: - id: hello run: echo "hello from Dagu" EOF -
4运行工作流
用 dagu start 执行指定 YAML 文件,终端会输出步骤执行结果。
dagu start hello.yaml -
5Docker 一键启动
用官方镜像启动服务端、调度器和执行器,映射 8080 端口并挂载数据目录。
docker run --rm -v ~/.dagu:/var/lib/dagu -p 8080:8080 ghcr.io/dagucloud/dagu:latest dagu start-all -
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=<your-rwx-storage-class>
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
persistence.storageClass | 是 | Helm 安装时指定支持 ReadWriteMany 的存储类 | nfs-rwx |
steps[].run | 是 | 步骤中直接执行的 shell 命令 | echo "hello from Dagu" |
steps[].action | 否 | 使用内置动作执行步骤,如运行容器 | docker.run |
steps[].with.image | 否 | docker.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 安装时必须把 <your-rwx-storage-class> 替换为真实且支持 ReadWriteMany 的存储类。
- 同一份工作流 YAML 可用于单机、临时 worker 和分布式 worker 三种部署形态。
核心亮点
- 单二进制无数据库,部署零依赖,上手极快
- 声明式 YAML 简洁直观,学习成本低,易于维护
- 内置 Web UI 和人工审批,支持 AI 代理编排,贴合现代工作流
不足之处
- 文档/社区待观察
- 与成熟的 Airflow 相比,生态和插件较少
适用场景
- 团队需要快速自动化脚本和命令,但不想引入重量级编排系统
- 在本地或边缘环境编排任务,要求部署简单、资源占用低
- 需要编排 AI 代理或 LLM 调用,并希望有人工审核环节
替代项目
Airflow、Prefect、Dagu
上一篇:kandev
下一篇:safari-mcp
同类项目推荐
uTools-quickcommand
开源
拖拽或写脚本,把桌面重复操作变成一键流程
实现具备UI交互的自动化操作,支持可视化拖拽及直接编写脚本两种形式。1.可视化拖拽支持文···
artemis
开源
说句话就能自动操作安卓手机,跑通全流程还带日志
ARTEMIS turns natural-language instructions into reliable Android automation. It aut···
budibase
开源
拖拽搭建内部工具和自动化流程,快速上线业务应用。
AI agents, automations and apps that run your operations. Model agnostic.
lynq
开源
让数据库驱动K8s配置,自动执行工作流
⚓️ Kubernetes-Native Database-Driven Provisioning Workflow Automation
claude-skill-social-post
开源
学习你的文风,自动发帖,14天内容日历管够。
A Claude Code skill by Hao (駱君昊) that learns your Facebook voice and auto-posts t···
grasp
开源
多个编码代理并行干活,一张图看清进度
Grasp helps you manage multiple projects and parallel coding agents in one visual wo···
copilot-collections
开源
把 AI 编码助手装进产品研发的标准流水线
Opinionated AI-enabled workflows for product engineering
mcp-n8n-workflow-builder
开源
用聊天就能搭 n8n 工作流,不用手写 JSON
AI-powered n8n workflow automation through natural language. MCP server enabling Cla···
pydoll
开源
免 WebDriver 驱动 Chromium,模拟真人操作防检测
Pydoll is a library for automating chromium-based browsers without a WebDriver, offe···
