Как добавить аутентификацию и конечную точку в Django Celery Flower Monitoring?
Я использую цветок локально, и, кажется, его достаточно легко настроить и запустить, но я не понимаю, как бы настроить его в производственной среде.
В частности, как я могу добавить аутентификацию и как определить URL для доступа к ней?
2 ответа
Решение
Для пользовательского адреса используйте --address
флаг. Для аутентификации используйте --basic_auth
флаг.
Увидеть ниже:
# celery flower --help
Usage: /usr/local/bin/celery [OPTIONS]
Options:
--address run on the given address
--auth regexp of emails to grant access
--basic_auth colon separated user-password to enable
basic auth
--broker_api inspect broker e.g.
http://guest:guest@localhost:15672/api/
--certfile path to SSL certificate file
--db flower database file (default flower.db)
--debug run in debug mode (default False)
--help show this help information
--inspect inspect workers (default True)
--inspect_timeout inspect timeout (in milliseconds) (default
1000)
--keyfile path to SSL key file
--max_tasks maximum number of tasks to keep in memory
(default 10000) (default 10000)
--persistent enable persistent mode (default False)
--port run on the given port (default 5555)
--url_prefix base url prefix
--xheaders enable support for the 'X-Real-Ip' and
'X-Scheme' headers. (default False)
Вы используете https://pypi.org/project/django-revproxy/
Таким образом, Flower скрыт за авторизацией Django, и вам не нужно переписывать правило на вашем веб-сервере.
Оригинальный источник этого ответа: Безопасность цветов сельдерея в производстве