cloudbees/cbflow-servercbflow-server 是一个面向流程自动化的轻量级工作流管理服务器镜像,旨在提供高效、可扩展的工作流编排能力。该镜像基于Alpine Linux构建,体积小巧且资源占用低,支持通过配置文件或API定义工作流,实现任务的自动化调度、依赖管理与执行监控,广泛适用于企业内部流程自动化、数据处理流水线、定时任务管理等场景。
通过以下命令启动基础工作流服务器实例:
bashdocker run -d -p 8080:8080 --name cbflow-server cbflow-server:latest
启动后可通过 http://localhost:8080 访问Web管理界面(默认用户名/密码:admin/admin),或通过 http://localhost:8080/api/v1 访问API端点。
支持通过环境变量自定义服务参数,常用配置项如下:
| 环境变量名 | 说明 | 默认值 |
|---|---|---|
CBFLOW_PORT | 服务监听端口 | 8080 |
CBFLOW_DATA_DIR | 数据存储目录(工作流配置、日志) | /var/lib/cbflow |
CBFLOW_LOG_LEVEL | 日志级别(DEBUG/INFO/WARN/ERROR) | INFO |
CBFLOW_AUTH_ENABLED | 是否启用认证 | false |
CBFLOW_ADMIN_USER | 管理员用户名(启用认证时) | admin |
CBFLOW_ADMIN_PASSWORD | 管理员密码(启用认证时) | admin |
示例:启用认证并修改默认端口
bashdocker run -d \ -p 9000:9000 \ -e CBFLOW_PORT=9000 \ -e CBFLOW_AUTH_ENABLED=true \ -e CBFLOW_ADMIN_PASSWORD=SecurePass123! \ --name cbflow-server \ cbflow-server:latest
为避免容器重启导致工作流配置与执行日志丢失,需挂载数据存储目录:
bashdocker run -d \ -p 8080:8080 \ -v ./cbflow-data:/var/lib/cbflow \ # 持久化数据目录 --name cbflow-server \ cbflow-server:latest
挂载后,工作流配置文件(位于容器内 /var/lib/cbflow/workflows)、执行日志(/var/lib/cbflow/logs)将持久化至宿主机 ./cbflow-data 目录。
工作流配置文件需放置于数据目录的 workflows 子目录(如宿主机 ./cbflow-data/workflows),支持热加载(文件更新后自动生效)。以下为典型工作流配置示例(daily_data_process.yaml):
yamlname: "每日数据处理流程" description: "每日凌晨执行数据采集、清洗与入库" trigger: type: "cron" schedule: "0 0 * * *" # Cron表达式:每日0点执行 tasks: - id: "data_fetch" name: "数据采集" type: "http" config: url: "[***]" method: "GET" timeout: 30s headers: Authorization: "Bearer {{API_TOKEN}}" # 支持环境变量引用 - id: "data_clean" name: "数据清洗" type: "script" config: script_path: "/scripts/clean_data.py" # 脚本路径(需挂载脚本目录) interpreter: "python3" args: ["--input", "{{data_fetch.output.file}}"] # 引用前序任务输出 depends_on: ["data_fetch"] # 依赖"数据采集"任务完成 - id: "data_store" name: "数据入库" type: "sql" config: driver: "mysql" dsn: "user:password@tcp(db-host:3306)/data_db" sql_file: "/sql/insert_data.sql" # SQL文件路径(需挂载SQL目录) depends_on: ["data_clean"] # 依赖"数据清洗"任务完成
挂载自定义脚本与SQL文件:
bashdocker run -d \ -p 8080:8080 \ -v ./cbflow-data:/var/lib/cbflow \ -v ./scripts:/scripts \ # 挂载本地脚本目录 -v ./sql:/sql \ # 挂载本地SQL目录 -e API_TOKEN="your-api-token" \ # 注入工作流所需环境变量 --name cbflow-server \ cbflow-server:latest
CBFLOW_AUTH_ENABLED=true 启用认证,并修改默认管理员密码CBFLOW_WORKER_COUNT 环境变量(默认4)增加任务执行worker数量
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务