【发布时间】:2021-05-11 10:04:49
【问题描述】:
请参阅this answer 将端口从一个 Docker 容器转发到另一个。我怎样才能在 Docker Compose 中做同样的事情?
【问题讨论】:
标签: docker-compose portforwarding
请参阅this answer 将端口从一个 Docker 容器转发到另一个。我怎样才能在 Docker Compose 中做同样的事情?
【问题讨论】:
标签: docker-compose portforwarding
可以使用network_mode键(documentation)定义:
version: "3"
services:
foo:
container_name: foo
bar:
network_mode: container:foo
虽然我宁愿避免这样做;这不是“端口转发”,这是使用另一个容器的网络堆栈的指令。最好使用服务名称而不是 localhost。 IE。解决foo容器端口使用foo:<port>而不是localhost:<port>。这样您就不会受到副本和网络配置选项的限制。
【讨论】:
localhost 硬编码为数据库主机名,我必须以某种方式将localhost:5432 转发到dbcontainer:5432。