我在我的一个系统上遇到了一个关于docker-compose的奇怪问题。
我在同一台机器上有两个TICK (Telegraf,InfluxDB,Chronograf,Kapacitor) docker-compose“项目”。使用以下docker-compose.yml
由于这两个服务都是在同一个NGINX SSL实例后面代理的,因此它们都加入了一个公共的nginx_proxy外部网络。
问题是,一旦我开始第二个compose堆栈。不知何故,第一个堆栈开始表现不佳:来自第一个计时器的几个(如20%)请求通过influxdb主机名指向influxdb服务,然后以某种方式从第二个堆栈重定向到influxb实例。
我知道因为它们在同一个nginx网络上,所以它们可以通信,但是我如何强制第一个实例始终针对它自己的服务,而不是交叉组合?尝试指定链接,但不起作用。
我可以设置任何配置来实现这种隔离,而不必重命名所有服务吗?
发布于 2017-11-27 04:34:26
我不期望嵌入式DNS服务器自动执行您想要的操作,因为它对我来说似乎是模棱两可的( docker-compose文件没有表达您在这里用自然语言表达的内容,这是完全没有歧义的)。事实上,我甚至感到惊讶的是,它允许它运行(似乎正在跨容器进行轮询,这可以解释为什么只有一些请求被错误路由)。
为了回答您的问题,我将简单地使用明确的aliases或明确的服务名称,尽管可能还有其他解决方案。
https://stackoverflow.com/questions/47500014
复制相似问题