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)然后它应该开始为你工作. (编辑:十堰站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Nginx ssl_verify_client和proxy_pass
- ruby-on-rails – 错误乘客没有看到环境变量?
- 为什么proxy_set_header主机$host;不再在nginx 1.8.0中工作
- Nginx:如何根据用户代理限制请求率
- 通过https/SSL访问NGINX/PHP-FPM时速度极慢
- nginx不会在文档根目录的子目录中提供error_page
- 使用Meteor-Up,SSL和NGINX将Meteor部署到生产环境
- nginx – 我如何追踪php-fpm终止的原因?
- Django uwsgi nginx重定向到默认页面“欢迎来到NGINX”
- nginx在docker swarm服务面前