Nginx无法从docker 1.10.1中的嵌入式DNS获取主机
我有几个服务在docker容器中运行,一个nginx服务器在它们前面,所有容器都在同一个docker网络中.在docker 1.10之前我创建了一个dnsmasq容器并在nginx中设置了解析器,因此可以从nginx中发现我的服务. 但升级到docker 1.10.1后,dnsmasq映像不起作用.经过一些研究,我尝试使用地址127.0.0.11中的新“嵌入式dns”(我认为这应该是在docker网络中使用的正确方法).虽然我可以从nginx容器ping到服务容器,但是nginx继续发送回来无法解决(3:Host not found). 然后我尝试使用host命令,我得到了非常令人困惑的结果:(第一个ip地址,然后找不到主机 – 与我从nginx获得的代码相同)
Ping工作
以下是我的配置的简化版本: 泊坞窗,compose.yml
容器中的nginx.conf
这也是来自主持人的详细结果:
我的码头版
谁能帮我弄清楚出了什么问题?或者如何深入研究这个问题? 最佳答案 这是因为docker dns服务器不执行ipv6,但是从1.5.8:http://nginx.org/en/docs/http/ngx_http_core_module.html#resolver开始,nginx解析器同时查询ipv6和ipv4 您可以在nginx中的解析器行上轻松禁用ipv6(参见上面的链接,它只是ipv6 = off)然后它应该开始为你工作. (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ubuntu – 卸载nginx?
- 在Digital ocean上部署Django,Gunicorn,Nginx,Virtualenv给
- linux – 如何将nginx更新为最新的稳定版本?
- 身份验证 – Jenkins/Nginx – Double提示基本身份验证,为什
- nginx-重启时Docker容器IP是否会更改?
- ruby-on-rails – 升级Phusion Passenger而无需重新安装Ngi
- ruby-on-rails-capistrano部署后ec2服务器中缺少puma.sock
- python – 使用压缩数据填充memcached,直接从nginx提供
- Nginx .conf和简单的数学
- 如何根据Nginx中的请求URL重定向到特定的上游服务器?