2016-08-15 69 views
0

我有三个docker容器,每个容器都有一个以golang实现的HTTP端点。golang docker容器的反向代理

我通过一个docker-compose.yml文件开始他们三个都一样:

version: '2' 
services: 
    first_service: 
     build: api/firstService 
    second_service: 
     build: api/secondService 
    third_service: 
     build: api/thirdService 

暴露的每个服务的是独特的端点。例如:first_service监听/ 1/api; second_service监听/ 2/api; third_service侦听/ 3/API

所有三个容器暴露自己的服务端口80

有没有办法对我来说,使用一个IP地址查询所有端点?例如:

如果我卷曲: http://myservice/1/*请求应该去first_service http://myservice/2/*请求应该去second_service等。我知道我可能不得不创建某种反向代理。但我无法知道如何使用docker-compose进行配置,并正确执行端口映射。我想要一个适用于docker 1.12以后的解决方案,最好。 docker中的服务发现可能是一个相关的主题。但我无法得到这个工作,因为我是nginx的新手,服务发现等任何帮助?

+0

你也在容器中使用nginx吗? –

+0

不,我不是。但是如果它有帮助,我可以使用它。 –

+0

我会看看https://technologyconversations.com/2016/08/01/integrating-proxy-with-docker-swarm-tour-around-docker-1-12-series/ –

回答