我有一个非常简单的芹菜任务运行的(长期运行)的shell脚本:芹菜+ Redis的失去连接
import os
from celery import Celery
os.environ['CELERY_TIMEZONE'] = 'Europe/Rome'
os.environ['TIMEZONE'] = 'Europe/Rome'
app = Celery('tasks', backend='redis', broker='redis://OTHER_SERVER:6379/0')
@app.task(name='ct.execute_script')
def execute_script(command):
return os.system(command)
我有这样的任务对服务器MY_SERVER运行,我从OTHER_SERVER启动它在那里也运行Redis数据库。 任务似乎成功运行(我看到在文件系统中执行脚本的结果),但我总是开始收到以下错误:
INTERNAL ERROR: ConnectionError('Error 111 connecting to localhost:6379. Connection refused.',)
什么可能呢?为什么它试图联系localhost
,而我已经将Redis服务器设置为redis://OTHER_SERVER:6379/0
并且它可以工作(自任务启动后)?谢谢
试试这个:http://stackoverflow.com/a/13928537/180960 – aliva
嗨,它已经被设置为0.0.0.0,还是行不通。 – pistacchio