docker nginx: no resolver defined to resolve

更新于 阅读 45

在docker中使用nginx时,proxy_pass到某个容器时报错,比如配置nginx为如下时

location / { proxy_pass http://gateway$request_uri; }

报错信息

2024/01/11 11:30:28 [error] 7#7: *1 no resolver defined to resolve gateway, client: 192.168.65.1, xxxxxxxxx

提示没有resolver,这是可以添加下面的配置来解决,这里指向gateway容器中的443端口。

upstream gateway { server gateway:443; }

添加后的配置如下:

upstream gateway { server gateway:443; } server { // ..... location / { proxy_pass http://gateway$request_uri; } }