admin管理员组文章数量:1033155
docker 搭建nginx提示 host not found in upstream
docker 搭建nginx提示 host not found in upstream,
代码语言:txt复制nginx: [emerg] host not found in upstream "xxx" in /etc/nginx/nginx.conf:xx
docker里面里面有很多项目,都是通过bridge网络进行配置,由于启动顺序或者更新问题,会导致部分host不存在,然后提示该错误,然后无法启动。原因是nginx 启动时,会对其配置的 upstream 进行 DNS 解析测试,如果无法解析成功则会报错无法启动。但是,当我们将 upstream 修改为变量时,nginx 不会进行测试,以此绕过这个问题。
resolver 则为 Nginx 设置 DNS 服务器,Nginx会动态利用 resolver 设置的DNS服务器(本机设置的 DNS 服务器或 /etc/hosts 无效),将域名解析成 IP,proxy 模块会将请求转发到解析后的IP上。
此时可以讲host设置位变量
代码语言:conf复制location /test {
resolver 127.0.0.11 10s; # docker 内部dns解析
set $ht docker-host;
proxy_pass http://$ht;
}
参考 /
docker 搭建nginx提示 host not found in upstream
docker 搭建nginx提示 host not found in upstream,
代码语言:txt复制nginx: [emerg] host not found in upstream "xxx" in /etc/nginx/nginx.conf:xx
docker里面里面有很多项目,都是通过bridge网络进行配置,由于启动顺序或者更新问题,会导致部分host不存在,然后提示该错误,然后无法启动。原因是nginx 启动时,会对其配置的 upstream 进行 DNS 解析测试,如果无法解析成功则会报错无法启动。但是,当我们将 upstream 修改为变量时,nginx 不会进行测试,以此绕过这个问题。
resolver 则为 Nginx 设置 DNS 服务器,Nginx会动态利用 resolver 设置的DNS服务器(本机设置的 DNS 服务器或 /etc/hosts 无效),将域名解析成 IP,proxy 模块会将请求转发到解析后的IP上。
此时可以讲host设置位变量
代码语言:conf复制location /test {
resolver 127.0.0.11 10s; # docker 内部dns解析
set $ht docker-host;
proxy_pass http://$ht;
}
参考 /
本文标签: docker 搭建nginx提示 host not found in upstream
版权声明:本文标题:docker 搭建nginx提示 host not found in upstream 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1748013699a2241561.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论