kestra

用 YAML 编排一切任务,自动调度、监控、重试,省心省力

开源 🏷️基础免费,高级付费 ✅ 目前可打开 智能体 🍴 复刻 3522 🐛 待处理 678 👀 关注 168
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 30188
维护状态 活跃
是否开源 开源
定价模式 🏷️基础免费,高级付费 支持限时试用 · 提供免费社区版(开源),企业版需付费订阅,含高级功能与支持,可申请试用。

项目预览

kestra 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类智能体
开发团队kestra-io
定价模式🏷️基础免费,高级付费
价格说明提供免费社区版(开源),企业版需付费订阅,含高级功能与支持,可申请试用。
访问状态✅ 目前可打开
是否开源是
开源协议Apache-2.0
主要语言Java
技术栈/模型ai-agents,automation,control-plane,data-engineering,data-orchestration,data-orchestrator,devops,etl,hacktoberfest,high-availability,infra-automation,infra-ops,infrastructure-as-code,java,low-code,orchestration,pipeline,pipeline-as-code,scheduler,workflow
GitHub 星标★ 30188
上线时间2019-08-24 00:00:00
代码更新2026-11-10
仓库体积152.2 MB
本站数据更新2026-11-10
维护状态活跃
收录时间2026-08-09
浏览次数3

项目介绍

Kestra 是一个面向关键任务应用的事件驱动编排与调度平台。它解决了复杂工作流中数据管道、任务调度和自动化流程难以统一管理的问题。核心能力包括:基于 YAML 的声明式工作流定义,支持事件触发、定时调度和手动触发;内置 600 多个插件,可连接数据库、云服务、消息队列等;提供可视化 UI 用于监控、日志查看和流程管理;支持分布式执行、弹性伸缩和失败重试。Kestra 将基础设施自动化、数据处理和业务逻辑编排整合到一个平台,降低运维复杂度,提升流程可靠性。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 30188

使用教程

难度:入门 约 10 分钟 部署方式:Docker 6 步

环境要求

  • 已安装并正在运行 Docker(README 要求先确认 Docker 已启动)
  • 本机 8080 端口可用(容器映射 -p 8080:8080)
  • 需要挂载 Docker socket(/var/run/docker.sock)与 /tmp 目录以供容器内任务执行
  • Windows 用户需注意:PowerShell/CMD/WSL 三种终端的命令换行与路径写法不同

安装与启动步骤

  1. 1确认 Docker 已运行

    README 明确要求先确保 Docker 处于运行状态,否则后续容器无法启动。

    docker info
  2. 2启动 Kestra 容器

    Linux/macOS/WSL 用户执行;使用 slim 镜像并开启插件自动安装。

    docker run --pull=always --rm -it -p 8080:8080 --user=root \
      --name kestra \
      -v kestra_data:/app/storage \
      -v kestra_db:/app/data \
      -v /var/run/docker.sock:/var/run/docker.sock \
      -v /tmp:/tmp \
      -e KESTRA_PLUGINS_AUTO_INSTALL_ENABLED=true \
      kestra/kestra:latest-slim server local
  3. 3Windows PowerShell 启

    PowerShell 用反引号作为换行符,注意路径需加引号。

    docker run --pull=always --rm -it -p 8080:8080 --user=root `
      --name kestra `
      -v "kestra_data:/app/storage" `
      -v "kestra_db:/app/data" `
      -v "/var/run/docker.sock:/var/run/docker.sock" `
      -v "C:/Temp:/tmp" `
      -e KESTRA_PLUGINS_AUTO_INSTALL_ENABLED=true `
      kestra/kestra:latest-slim server local
  4. 4Windows CMD 启动

    CMD 使用 ^ 作为续行符,路径同样需要引号包裹。

    docker run --pull=always --rm -it -p 8080:8080 --user=root ^
      --name kestra ^
      -v "kestra_data:/app/storage" ^
      -v "kestra_db:/app/data" ^
      -v "/var/run/docker.sock:/var/run/docker.sock" ^
      -v "C:/Temp:/tmp" ^
      -e KESTRA_PLUGINS_AUTO_INSTALL_ENABLED=true ^
      kestra/kestra:latest-slim server local
  5. 5Windows WSL 启动

    在 WSL 中使用 Linux 写法,但 /tmp 需映射到 /mnt/c/Temp。

    docker run --pull=always --rm -it -p 8080:8080 --user=root \
      --name kestra \
      -v kestra_data:/app/storage \
      -v kestra_db:/app/data \
      -v "/var/run/docker.sock:/var/run/docker.sock" \
      -v "/mnt/c/Temp:/tmp" \
      -e KESTRA_PLUGINS_AUTO_INSTALL_ENABLED=true \
      kestra/kestra:latest-slim server local
  6. 6访问 Web UI

    容器启动后在浏览器打开地址即可开始创建第一个流程。

关键配置

配置项必填说明示例
KESTRA_PLUGINS_AUTO_INSTALL_ENABLED否设为 true 时,流程首次用到某插件会从 Maven Central 自动下载true
镜像标签 latest-slim否不含内置插件、下载体积小;改用 kestra/kestra:latest 可预装全部插件kestra/kestra:latest-slim
-p 8080:8080否将容器 8080 端口映射到本机,UI 通过该端口访问-p 8080:8080
卷 kestra_data / kestra_db否分别持久化 /app/storage 与 /app/data,容器删除后数据仍在kestra_data:/app/storage

如何确认成功

容器日志正常输出后,浏览器访问 http://localhost:8080 能看到 Kestra 的 Web UI 界面即启动成功。

常见问题

Q:为什么用 latest-slim 镜像而不是 latest?

A:slim 镜像不含插件以减小下载体积,配合 KESTRA_PLUGINS_AUTO_INSTALL_ENABLED=true,流程首次需要某插件时才从 Maven Central 拉取;想一次性预装全部插件就换成 kestra/kestra:latest 并去掉该环境变量。

Q:8080 端口被占用怎么办?

A:README 未给出说明,可参考官方安装指南调整端口映射:把 -p 8080:8080 中左侧的本机端口改为其他空闲端口,再用新端口访问 UI。

Q:重启容器后数据会丢吗?

A:不会。命令挂载了 kestra_data 与 kestra_db 两个命名卷,分别对应 /app/storage 和 /app/data,容器被删除数据仍保留在卷中。

Q:还有哪些部署方式?

A:README 提到官方安装指南提供 Docker Compose、Podman、Kubernetes 以及 AWS、GCP、Azure 等部署方式;GCP 另提供 Terraform 模块部署。

Q:Windows 用户该选哪种命令?

A:README 给出了 PowerShell、CMD、WSL 三种写法,按你实际使用的终端选择即可;WSL 请把 /tmp 映射改为 /mnt/c/Temp:/tmp。

注意事项

  • 命令带 --rm,容器停止后会被自动删除,依赖命名卷保存数据
  • 挂载了 /var/run/docker.sock 并指定 --user=root,容器内任务才能调用宿主 Docker
  • 需要挂载 /tmp 目录(Windows 为 C:/Temp 或 /mnt/c/Temp),供任务执行时使用
  • 本地 single-command 方式适合体验,生产环境请参考官方安装指南选择其他部署方式

核心亮点

  • 声明式 YAML 定义工作流,上手快,版本可控
  • 600+ 插件覆盖数据库、云、消息等主流服务
  • 可视化 UI 实时监控流程状态和日志,排障高效

不足之处

  • Java 技术栈较重,部署和资源占用相对较高
  • 文档/社区待观察

适用场景

  • 数据管道 ETL 定时调度与监控
  • 微服务间复杂事件驱动自动化
  • 基础设施运维任务编排(如备份、发布)

替代项目

Apache Airflow、Prefect、Temporal

上一篇:SwiftAutoGUI

下一篇:awesome-n8n-templates

同类项目推荐

browsers-benchmark 开源

实测各浏览器自动化引擎,看谁能绕过风控、谁最快。

Browser automation engine benchmark - Test bypass rates, performance & stealth again···

★ 421 2026-09-18
stagehand 开源

用自然语言指挥浏览器,自动抓数据、点页面

The SDK to extract data and interact with any site on the web. Get started with Clau···

★ 25992 2026-09-24
ComfyUIMini 开源

手机上轻松跑 ComfyUI 工作流,随时随地出图

A mobile-friendly WebUI to run ComfyUI workflows.

★ 389 2026-08-09
chatgpt-scraper 开源

免费用网页抓取ChatGPT回复,省下API钱

Easily collect responses from ChatGPT scraper by providing a prompt along with valid···

★ 3372 2026-08-09
chrome-devtools-axi 开源

让 AI Agent 像人一样操作浏览器,少写胶水代码

The most agent-ergonomic browser automation

★ 452 2026-09-18
comanda 开源

用 YAML 编排多个 AI 编程助手,在终端里自动化跑通复杂任务。

The CLI-native orchestrator for AI agent workflows. Run Claude Code, Codex, Gemini C···

★ 333 2026-08-09
teardown 开源

一句话让 Claude 把机器拆成可交互的 3D 模型

A Claude Code skill that turns any machine into a 3D simulator you can take apart

★ 2823 2026-11-05
pipelex 开源

用声明式 DSL 把 AI 流程拼成可复用积木

Build AI methods with your coding agent, then run them anywhere: as an MCP for chatb···

★ 950 2026-09-16
bua 开源

用大白话指挥浏览器,AI 帮你自动点击操作

AI-powered browser automation for Go — describe tasks in plain English, let the age···

★ 85 2026-08-09