Flow Worker 是一个 Camunda 外部任务执行器,支持云主机管理和漫游迁移工作流,包含自动重试机制和完整的 Docker 部署。
- Docker 20.10+
- Docker Compose 1.29+
- 4GB+ RAM,5GB+ 磁盘空间
docker --version && docker-compose --versioncd /home/yuan/flowWorker
# 构建镜像
docker build -t flow-worker:1.0.0 .
# 启动所有服务(Camunda 引擎 + Flow Worker)
docker-compose up -d
# 验证服务状态
docker-compose ps# 检查容器是否运行
docker-compose ps
# 查看 Flow Worker 日志
docker-compose logs -f flow-worker --tail 20打开浏览器访问:
| 服务 | 地址 | 凭证 |
|---|---|---|
| Camunda Cockpit | http://localhost:8080/camunda/app/cockpit | demo / demo |
| 任务管理 | http://localhost:8080/camunda/app/tasklist | demo / demo |
| 用户管理 | http://localhost:8080/camunda/app/admin | demo / demo |
# 自动部署两个工作流
chmod +x deploy.sh && ./deploy.sh
# 或手动验证
curl -u admin:admin http://localhost:8080/engine-rest/process-definition | jq .curl -X POST \
-H "Content-Type: application/json" \
http://localhost:8080/engine-rest/process-definition/key/cloud-host-workflow/start# 使用脚本启动
./start_roaming_migration.sh my-host-001
# 查看日志
docker-compose logs -f flow-worker| 文档 | 内容 | 何时阅读 |
|---|---|---|
| README.md | 项目概览、快速开始 | 第一次了解项目 |
| DEPLOYMENT.md | 详细部署指南、故障排除 | 部署或遇到问题时 |
| AGENTS.md | AI 代理开发指南 | 扩展功能时 |
| DEPLOYMENT_SUMMARY.md | 部署完成清单 | 验证部署状态 |
# 查看日志
docker-compose logs -f flow-worker
# 停止服务
docker-compose stop
# 重启服务
docker-compose restart
# 完全移除(包括数据)
docker-compose down -v
# 扩展 Flow Worker 实例到 3 个
docker-compose up -d --scale flow-worker=3
# 进入容器交互式终端
docker-compose exec flow-worker /bin/bash开始 → 创建主机 → 启动主机 → 停止主机 → 检查状态 → 结束
开始 → 准备迁移 → 数据迁移(3次重试) → 网络切换 → 验证 →
├─ 成功 → 结束
└─ 失败 → 回滚 → 结束
在 Cockpit 中:
- 打开 http://localhost:8080/camunda/app/cockpit
- 点击 "Processes" 选择工作流
- 查看 "Process Instances" 中的执行状态
# 查看所有异常
docker-compose logs flow-worker | grep -i "error\|exception\|failed"
# 查看重试信息
docker-compose logs flow-worker | grep -i "retry"- 按本指南完成部署
- 在 Cockpit 中启动工作流实例
- 观察执行过程和变量传递
- 阅读 README.md 了解架构
- 查看 BPMN 工作流定义文件
- 研究
CloudHostWorker.java中的 Topic Handler 实现 - 理解错误处理和重试机制
- 阅读 AGENTS.md 开发指南
- 尝试添加新的 Topic Handler
- 修改重试策略
- 自定义业务逻辑
- 配置生产级数据库(PostgreSQL)
- 设置日志和监控
- 配置 HTTPS
- 进行压力测试
docker-compose logs -f flow-workerdocker-compose restart- 使用 Camunda Modeler 设计 BPMN
- 将文件放在项目根目录
- 在
deploy.sh中添加部署命令 - 运行
./deploy.sh
编辑 docker-compose.yml 中的 CAMUNDA_USERNAME 和 CAMUNDA_PASSWORD
docker-compose up -d --scale flow-worker=5如遇问题,请:
- 查看 DEPLOYMENT.md 的 "故障排除" 章节
- 检查容器日志:
docker-compose logs - 验证 Camunda 引擎是否正常运行:
curl -u admin:admin http://localhost:8080/engine-rest/engine
- 完成 README.md
- 创建 DEPLOYMENT.md 详细部署指南
- 创建 AGENTS.md AI 代理指南
- 创建 docker-compose.yml 容器编排
- 新增漫游迁移工作流和 5 个新 Handler
- 实现 3 次自动重试机制
- 创建部署验证脚本
- 所有文件验证通过 ✓
cd /home/yuan/flowWorker
docker build -t flow-worker:1.0.0 . && docker-compose up -d在浏览器打开:http://localhost:8080/camunda 开始使用!
需要详细说明? 查看 README.md 和 DEPLOYMENT.md
需要开发指南? 查看 AGENTS.md
需要故障排除? 查看 DEPLOYMENT.md#故障排除