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. 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 

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

浏览官方redis容器的README。

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='' 

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

使用resis:6379

当您命名容器时,docker工人将该名称添加到专用dockernetworking