1.7 KiB
1.7 KiB
Work Log - 修复 Docker Flower 容器重启异常(2026-05-02)
-
背景:
docker compose ps显示fquiz-flower持续Restarting。docker compose logs flower报错:Error: No such command 'flower'.
-
根因:
flower服务命令使用celery ... flower,但api镜像依赖中未安装flower包。- 同时
docker compose在解析阶段对minio-init.command中的$MINIO_*进行了提前插值,导致每次执行出现变量未设置 warning。
-
本次改动(最小闭环):
- 文件:
api/requirements.txt- 新增依赖:
flower==2.0.1。
- 新增依赖:
- 文件:
api/pyproject.toml- 新增依赖:
flower>=2.0.0,<3.0.0,与 requirements 口径一致。
- 新增依赖:
- 文件:
docker-compose.ymlminio-init启动脚本中的变量引用改为$$MINIO_*,避免 compose 提前展开:"$MINIO_ENDPOINT" -> "$$MINIO_ENDPOINT""$MINIO_ACCESS_KEY" -> "$$MINIO_ACCESS_KEY""$MINIO_SECRET_KEY" -> "$$MINIO_SECRET_KEY""$MINIO_BUCKET" -> "$$MINIO_BUCKET"
- 文件:
-
验证:
- 执行:
docker compose up -d --build flower docker compose ps flower:Up,不再重启。docker compose logs flower:- 出现
Visit me at http://0.0.0.0:5555 - 出现
Connected to redis://redis:6379/0
- 出现
- 执行:
docker compose logs --since=10m ... | rg "ERROR|Traceback|Exception|No such command|CRITICAL|FATAL|UndefinedColumn|relation \"|failed|denied|permission"- 结果:近 10 分钟内无命中。
- 执行:
-
风险与影响:
- 影响面:
api镜像新增flower依赖,镜像体积与构建时长略有增加。 - 当前运行中的
api/celery-worker/celery-beat/scheduler/web仍为既有镜像;本次仅重建并替换了flower。
- 影响面: