我有app,使用了Tornado和tornado-redis。 [image" app"在docker images
]
我开始redis:
docker run --name some-redis -d redis
然后我想用redis链接我的应用程序:
docker run --name some-app --link some-redis:redis app
我有错误:
Traceback (most recent call last):
File "./app.py", line 41, in <module>
c.connect()
File "/usr/local/lib/python3.4/site-packages/tornadoredis/client.py", line 333
, in connect
self.connection.connect()
File "/usr/local/lib/python3.4/site-packages/tornadoredis/connection.py", line
79, in connect
raise ConnectionError(str(e))
tornadoredis.exceptions.ConnectionError: [Errno 111] Connection refused
我已经使用本地龙卷风和redis测试了我的代码,并且它可以工作。
中的问题c = tornadoredis.Client()
c.connect()
为什么我的应用程序无法连接到redis-container?如何解决?我使用标准端口6379。
谢谢!
答案 0 :(得分:4)
tornadoredis
尝试在localhost
上使用redis。 (参见来源here)
因此,您需要通知tornadoredis
redis正在运行的位置(因为对于Docker镜像,它不在localhost
上运行)。
例如:
c = tornadoredis.Client(host="<hostname>")
c.connect()
在您的具体情况下,请将"redis"
替换为"<hostname>"
。