docker-compose:如何将几个 ip 映射到几个容器

docker-compose: how to map few ip to few containers

我有一台有两个ip地址的主机,还有两个nginx容器。如何将第一个ip映射到第一个nginx,第二个ip映射到第二个nginx?

我假设 IP 你实际上是指一个套接字,例如您的 nginx1 容器将在端口 8080 上监听 IP 地址 #1(比方说 1.2.3.1),您的 nginx2 容器将监听您的 IP 地址 #2(比方说 1.2.3.2) 在端口 8081 上。

选项--publish将满足您的需要。它与 docker run 一起使用:

docker run -d --publish=1.2.3.1:8080:80 -name nginx1 nginx

此命令将在后台模式下将图像 nginx 作为名为 nginx1 的容器启动,套接字 1.2.3.1:8080 将绑定到容器的端口 80 .至于nginx2docker run -d --publish=1.2.3.2:8081:80 -name nginx2 nginx.


要将其与 docker compose 结合使用,您只需在 .yml 文件中添加这些选项即可!