Files
fquiz/memory/2026-05-02.md
T

35 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## 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.yml`
- `minio-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`