Docker:如何从本地容器连接到本地群集端口

时间:2017-12-03 12:40:46

标签: docker containers swarm

我们在6个主机和大约15个容器上运行swarm。有一个接入点作为端口3010打开。

在每个主机上,这是swarm的节点,有一个带有3个docker容器的本地隔离网络。在每个主机上,其中一个容器要连接到该发布端口3010.

我喜欢在该主机上使用端口,该主机当前正在运行该容器。我不知道,如果这是明智的吗?

如何解决在docker容器上使用的主机名称以连接到本地群集端口。 Localhost和127.0.0.1不可用。我可以在swarm上连接覆盖网络上的容器,但是当启动容器时,由于本地隔离网络,它是不可能的。

1 个答案:

答案 0 :(得分:0)

  

如何解决在docker容器上使用的主机名称以连接到本地群集端口。

您的服务名称 例如。当docker service create --name blue --network dev markuman/color时 然后你可以附上这个服务容器,找出确切的名称id

docker ps| grep blueeb46c52d0568        markuman/color:latest   
"/bin/sh -c '/bin/..."   51 seconds ago      Up 49 seconds       80/tcp              blue.1.o5w76smq3kh5jlomltf6yohj3

然后简单地做

docker exec -ti blue.1.o5w76smq3kh5jlomltf6yohj3 bash

那就是它。从那里你可以ping或ssh到分配到同一网络的其他服务 例如。当docker service create --name apache ...在同一网络中运行时,只需执行ping apache。这已经足够了