mos*_*she 0 docker docker-compose docker-network
我正在寻找一种方法将同一端口映射到两个不同的端口,每个端口用于不同网络中的另一个容器。考虑以下 docker-compose 场景:
services:
web:
build: .
ports:
- "8080:8080"
networks:
Net1:
Net2:
serv1:
image: tomcat:7.0.92-jre8
networks:
Net1:
serv2:
image: tomcat:7.0.92-jre8
networks:
Net2:
Run Code Online (Sandbox Code Playgroud)
现在我真正想做的是实际映射“web”服务端口 8080,以便 serv1 可以将其用作 8081,而 serv2 将其用作 8082。
这可能吗?
谢谢
端口发布到主机,而不是发布到 docker 网络,也不会发布到其他 docker 容器。因此上面的“8080:8080”将 docker 主机上的端口 8080 映射到该容器的端口 8080。
对于容器到容器的通信,这是使用 docker 的内部 DNS 进行服务发现和容器端口来实现的。因此 serv1 和 serv2 都可以连接到http://web:8080以访问其容器端口上的 Web 服务。这决不会阻止 serv1 和 serv2 在它们自己的容器内侦听它们希望的任何端口。
| 归档时间: |
|
| 查看次数: |
660 次 |
| 最近记录: |