问题:rqworker 运行时报错ERROR:root:Authentication required. 使用的是redis作为存储,因为redis设置了密码
解决:可以通过--url参数设置redis连接链接;也可以通过export设置redis连接链接为环境变量
方法:
1、rq连接redis
from rq import Queue
from redis import StrictRedis
from .config import config
redis_config = {
'host': config['RQ_SVR'],
'db': config['RQ_DB'],
'password': config['RQ_PASS']
}
redis_url = 'redis://:{password}@{host}:6379/{db}'.format(**redis_config)
redis_conn = StrictRedis.from_url(redis_url)
q = Queue(connection=redis_conn)
2、启动rqworker
.venv/bin/rqworker --url redis://:yourpassword@yourhost:6379/yourdb
或者
vim /etc/profile
export REDIS_URL=redis://:yourpassword@yourhost:6379/yourdb
.venv/bin/rqworker
注:
redis==5.0.1
rq==1.15.1