如何从其他服务访问docker-compose中的服务

时间:2020-01-09 05:44:43

标签: docker docker-compose

我是docker的新手,我想知道如何通过localhost连接到另一个服务。 例如,当我创建服务时,如果要从主机访问它,则只需在docker-compose中提供端口映射,例如

-8080:80

,然后在主机中执行localhost:8080以连接到它。我的问题是,当我想从另一个docker服务或容器中进行连接时,该如何连接。我该怎么做?

1 个答案:

答案 0 :(得分:2)

假设您在Windows主机上安装了docker。在docker-compose中,为每个服务提供端口映射。对于前。对于名为service1的服务

service1: 
     ports:
        -9001:9000

这里9000是要映射的service1中的端口。此端口映射到主机窗口的端口9001。 现在,您可以使用-> localhost:9001

从Windows访问service1

您可以使用-> service1:9000

从docker内部的另一个服务访问service1

现在,要回答您的问题,您可以执行以下操作

service1:
    ports:
       -9001:9000

service2:
    ports:
       -9002:9000

从主机窗口访问service1-> localhost:9001

从主机窗口访问service2-> localhost:9002

从docker内部访问service1-> service1:9000

从docker内部访问service2-> service2:9000