为什么我需要在netty socketio中给出主机名以及如何在docker中处理socketio?

时间:2015-06-16 14:05:48

标签: socket.io docker netty

我正在使用netty-socketio进行某些项目。我设置了这样的服务器:

Configuration config = new Configuration();
config.setHostname("localhost");
config.setPort(8080);

SocketIOServer server = new SocketIOServer(config);
server.start();

我对这一切知之甚少,我想知道为什么我需要在这里设置主机名?仅仅让端口听听还不够吗?

另外,我如何在Docker中处理这个:我有我的服务器的IP,以及容器的虚拟IP,我应该给哪一个?

如果我有另一个服务器在另一个容器中运行(但在同一台机器上)并且我希望这两个服务器进行通信怎么办?如何处理所有这些IP来实现这一目标呢?沟通是否会像在本地主机上一样高效?

1 个答案:

答案 0 :(得分:1)

正如您所见,here设置主机名可以轻松省略。基本上这只是一个将被绑定的界面。所以,是的,您只能指定要侦听的端口 - 在这种情况下,它将侦听0.0.0.0。

说到docker,您可能无法指定主机名但配置端口公开。例如。容器将在0.0.0.0:8888上收听,这将暴露于:8889 - 见port exposing

所有容器都将以其唯一的IP分配运行。如果您希望它们进行通信,只需要设置要绑定的不同端口。

相关问题