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

adh*_*dhg 2 django redis celery docker docker-compose

我不断收到错误消息:redis.exceptions.ResponseError: NOAUTH Authentication required..(我正在使用 celery 执行后台任务)。

我的 settings.py 如下所示:

CELERY_BROKER_URL = 'redis://user:my_strong_password@'+REDIS_IP+':6379/0'
Run Code Online (Sandbox Code Playgroud)

我有的 docker-compose:

services:

  redis:
    image: redis:latest
    container_name: jh_redis
    ports:
     - '6379:6379'
    command: redis-server --appendonly yes --requirepass my_strong_password 
Run Code Online (Sandbox Code Playgroud)

您可以看到我尝试提供的密码(--requirepass)与 settings.py 中显示的完全相同,但是,当 docker 启动并运行时,我仍然收到主题错误消息。

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

--requirepass 用户:my_strong_password

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

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

2ps*_*2ps 7

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

redis://:password@hostname:port/db_number
Run Code Online (Sandbox Code Playgroud)

即,您应该user从broker_url 中删除。