【问题标题】:Django Celery Redis AuthDjango Celery Redis 身份验证
【发布时间】:2021-09-27 12:32:19
【问题描述】:

我正在尝试将 Celery 添加到 django 以安排任务。我使用 Redis 后端,并通过 unix 套接字连接。安装程序一直在工作,直到我尝试对 redis.conf 使用密码验证:

我的设置.py:

CELERY_BROKER_URL = 'redis+socket:///home/username/domain/redis.sock?password=mypasswd'
CELERY_RESULT_BACKEND = 'redis+socket:///home/username/domain/redis.sock?password=mypasswd'

celery.py:

from __future__ import absolute_import, unicode_literals

import os
from celery import Celery

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'public_python.settings')
# celery settings for the demo_project
app = Celery('public_python')
app.config_from_object('django.conf:settings', namespace='CELERY')

app.autodiscover_tasks()

结果:

[2021-07-19 21:22:14,003: ERROR/MainProcess] consumer: Cannot connect to redis+socket:///home/username/domain/redis.sock: Authentication required..

我已经尝试添加: CELERY_REDIS_PASSWORD='mypasswd' (任何可以想象的相似词的组合),没有运气。

【问题讨论】:

    标签: django authentication redis passwords celery


    【解决方案1】:

    使用基于网络的套接字的正常格式如下所示:

    redis://:mypasswd@127.0.0.1:6379/0
    

    对于基于文件的套接字,您可能想尝试:

    redis+socket://:mypasswd@/home/username/domain/redis.sock?virtual_host=0
    

    【讨论】:

      猜你喜欢
      • 2017-10-21
      • 1970-01-01
      • 2014-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-03
      • 2011-09-23
      • 2013-09-09
      相关资源
      最近更新 更多