Celery не может подключиться к серверу RabbitMQ
Я пытаюсь запустить celery, и он не может подключиться к серверу RabbitMQ, хотя я правильно установил пользователя, vhost и назначил соответствующие теги
celery -A proj worker -l info
Вышеуказанная команда возвращает ошибку
[2021-09-28 18:05:37,649: ERROR/MainProcess] consumer: Cannot connect to amqp://test:**@12:5672//: timed out.
Trying again in 2.00 seconds... (1/100)
Я инициализировал приложение celery следующим образом
app = Celery('proj',
broker=f'amqp://test:test@12#4@localhost/test_vhost')
Я считаю, что это не работает, потому что пароль test@12#4
содержит специальные символы @
и #
.
Как заставить это работать без изменения пароля.
К сожалению, нет возможности использовать такие пароли с символами '@', это уже известная проблема с Celery и причина кроется в функциональности разбора urllib3. Единственным выходом является удаление таких символов из пароля.
Для справки, пожалуйста, посмотрите соответствующий выпуск на github здесь