Как добавить аутентификацию и конечную точку в Django Celery Flower Monitoring?

Я использовал цветок локально, и кажется, что его достаточно легко настроить и запустить, но я не представляю, как бы я настроил его в производственной среде.

В частности, как я могу добавить аутентификацию и как определить URL-адрес для доступа к ней?


person tzenderman    schedule 10.10.2013    source источник
comment
Не могли бы вы помочь настроить цветок с помощью celeryd... На самом деле я запускаю сельдерей от python manage.py celeryd, он работает хорошо, но когда я пытаюсь запустить цветок от celery flower -A proj --address=127.0.0.1 --port=5555, он не запускается...   -  person Vikram Singh Chandel    schedule 01.02.2017


Ответы (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)
person Neil    schedule 12.01.2014
comment
Я пробовал как внешний IP, так и 0.0.0.0, но безуспешно. - person Mohit; 19.11.2015
comment
Гррр, базовая авторизация. У меня уже есть хорошая настройка аутентификации для django. Теперь второй. Нет ли способа сделать цветок частью моего проекта django? - person guettli; 09.04.2021

Вы можете использовать https://pypi.org/project/django-revproxy/

Таким образом, Flower скрыт за авторизацией Django, и вам не нужно переписывать правило на вашем веб-сервере.

Оригинальный источник этого ответа: Celery Flower Security in Production

person guettli    schedule 09.04.2021