芹菜花 UNAUTHENTICATED_API 无法正常工作

问题描述 投票:0回答:1

我正在开发一个使用 celery 工作人员和 Flower 来监控这些工作人员的项目。 Worker 和 Flower 都作为镜像在一个容器内运行。我想使用 Flower 更改工作人员的属性,但尝试通过 Flower Web UI 更改值会引发以下错误:

FLOWER_UNAUTHENTICATED_API environment variable is required to enable API without authentication

我正在用

celery -A app.celery.celery_worker.celery worker --loglevel=info
启动工人,用
celery -A app.celery.celery_worker.celery flower --port=${PORT} --conf=app/celery/flowerconfig.py

启动花

我尝试在 celeryflower 命令中指定的路径上使用

FLOWER_UNAUTHENTICATED_API = True
设置一个flowerconfig 文件。尽管如此,当使用 Flower 的 Web UI 更改值时,会弹出相同的错误消息并且 Flower 输出
401 POST /api/worker/pool/grow/celery@615b8e2b9e60 (172.18.0.1): FLOWER_UNAUTHENTICATED_API environment variable is required to enable API without authentication

docker-compose celery flower
1个回答
0
投票

我遇到了同样的问题,我通过指定“--basic-auth”选项解决了这个问题,您可以在启动 Celery Flower 时指定用户和密码(Flower 2.0.0 身份验证文档)。所以启动 Flower 的完整命令如下

celery 
    -A app.celery.celery_worker.celery
    flower 
    --port=${PORT}
    --basic-auth=user:pwd
    --conf=app/celery/flowerconfig.py

当您在浏览器中打开 Flower 界面时,系统会要求您提供这些凭据,并且交互应该会再次起作用。如果您需要更复杂的身份验证,文档中还列出了其他选项。

© www.soinside.com 2019 - 2024. All rights reserved.