docker compose 端口已分配
docker compose port already allocated
我有三个 docker 容器,它们都需要访问端口 5432 上的 postgres。运行 每个独立我可以通过 -p 5432:5432
但我不能 运行 两个一次或更多,因为它们发生冲突。
我希望通过 docker compose 解决这个问题,但我需要有关如何在 yml 中进行端口映射的指导。
这就是我所拥有的,但无法正常工作:
version: '2'
services:
foo:
image: mynamespace/foo
ports:
- "5432:5432"
bar:
image: mynamespace/bar
ports:
- "5432:5432"
baz:
image: mynamespace/baz
ports:
- "5432:5432"
您不需要在每个容器上打开端口。您只需为您的数据库容器打开它。结果是这样的:
version: '2'
services:
foo:
image: mynamespace/foo
bar:
image: mynamespace/bar
baz:
image: mynamespace/baz
我有三个 docker 容器,它们都需要访问端口 5432 上的 postgres。运行 每个独立我可以通过 -p 5432:5432
但我不能 运行 两个一次或更多,因为它们发生冲突。
我希望通过 docker compose 解决这个问题,但我需要有关如何在 yml 中进行端口映射的指导。
这就是我所拥有的,但无法正常工作:
version: '2'
services:
foo:
image: mynamespace/foo
ports:
- "5432:5432"
bar:
image: mynamespace/bar
ports:
- "5432:5432"
baz:
image: mynamespace/baz
ports:
- "5432:5432"
您不需要在每个容器上打开端口。您只需为您的数据库容器打开它。结果是这样的:
version: '2'
services:
foo:
image: mynamespace/foo
bar:
image: mynamespace/bar
baz:
image: mynamespace/baz