Docker无法连接容器

时间:2017-04-30 23:46:17

标签: docker

所以我想运行一个redis容器和一个jupyter容器,它向redis服务器发出请求并绘制该数据。我跑

sudo docker run --name=redis -p 6379:6379 -d redis
sudo docker run -d --name=jupyter -p 8888:8888 hantaowang/visualizer start-notebook.sh --NotebookApp.token=''

但笔记本电脑不会运行。它说ConnectionError: Error 111 connecting to 127.0.0.1:6379. Connection refused.任何人都可以帮忙吗?提前谢谢。

编辑:我使用自己的dockerfile代替。

FROM jupyter/scipy-notebook
ADD visualizer.ipynb visualizer.ipynb
RUN pip3 install redis

2 个答案:

答案 0 :(得分:1)

您需要使用选项--link将redis容器链接到jupyter容器。

浏览官方redis容器的自述文件。

https://hub.docker.com/_/redis/

您可以将它与以下示例链接:

$ docker run --name some-app --link some-redis:redis -d application-that-uses-redis

所以你的命令应该改为

# No need expose the port 6379 now, because you link redis container to the other directly
$ sudo docker run --name=redis -d redis

$ sudo docker run -d --name=jupyter --link redis:redis -p 8888:8888 jupyter/scipy-notebook start-notebook.sh --NotebookApp.token=''

答案 1 :(得分:0)

127.0.0.1总是指向"计算机" (虚拟或其他)发出请求。在这种情况下,127.0.0.1:6379指向发出请求的jupyter容器。

使用resis:6379

当您命名容器时,docker会将该名称添加到私有docker网络