NOAUTH 需要身份验证。 docker 上的 Redis 设置 compose for django

NOAUTH Authentication required. Redis settings on docker compose for django

我不断收到错误消息:redis.exceptions.ResponseError:需要 NOAUTH 身份验证..(我正在使用 celery 执行后台任务)。

我的 settings.py 看起来像这样:

CELERY_BROKER_URL = 'redis://user:my_strong_password@'+REDIS_IP+':6379/0'

docker-compose 我有:

services:

  redis:
    image: redis:latest
    container_name: jh_redis
    ports:
     - '6379:6379'
    command: redis-server --appendonly yes --requirepass my_strong_password 

你可以看到我尝试提供密码 (--requirepass) 与 settings.py 中显示的完全一样,但是 docker 已启动并且 运行 我仍然得到主题错误信息。

我尝试过不同的组合,例如:

--requirepass user:my_strong_password

但还是不行。 注意:当我关闭整个命令行时 - 它可以工作(但 32 小时后 - 我收到错误消息并且它停止工作)。

docker-compose 中应该进行哪些适当的设置才能使其顺利运行?

根据 celery 文档,您的经纪人 url 应采用以下格式:

redis://:password@hostname:port/db_number

即,您应该从 broker_url 中删除 user