Docker:redirectlocalhost:28015

我正在尝试为rethinkdb和另一个nodejs设置容器。 我开始用rethinkdb容器:

docker run -itd --name test_rethinkdb -p 8080:8080 -p 28015:28105 -p 29015:29015 my_rethinkdb 

此外,我正在尝试与我的nodejs应用程序设置第二个容器:

 docker run -itd --name test_nodejs --link my_rethinkdb:my_rethinkdb my_nodejs. 

但是在npm run start之后,在test_nodejs容器中npm run start命令,我看到下面的内容

消息:ReqlDriverError:无法连接到本地主机:28015。

我怎么能redirect127.0.0.1:28105到rethinkdb我的容器?

你需要像下面那样运行它

 docker run -itd --name test_nodejs my_nodejs 

而你的nodejs代码应该尝试连接到test_rethinkdb:28105而不是localhost:28105 。 当您运行容器而不指定networking时,它们将运行默认网桥。

在这种情况下,容器可以使用其id或名称来识别。 这个名字就是你用--name传递的名字

PS:链接选项已被弃用,不应使用