diff --git a/nginx/nginx.conf b/nginx/nginx.conf index c99afba..c4ca9da 100644 --- a/nginx/nginx.conf +++ b/nginx/nginx.conf @@ -24,8 +24,17 @@ http { absolute_redirect off; + # 127.0.0.11 é o DNS interno do Docker. Usar uma variável no proxy_pass + # (em vez do hostname direto) força o nginx a resolver "anatomia-api" + # de novo a cada `valid=`, em vez de resolver uma única vez quando o + # worker sobe e cachear esse IP para sempre — sem isso, recriar o + # container anatomia-api (rebuild, restart) muda o IP dele e o nginx + # continua batendo no IP antigo até ser reiniciado manualmente. + resolver 127.0.0.11 valid=10s; + location /api/ { - proxy_pass http://anatomia-api:3333/api/; + set $api_upstream anatomia-api:3333; + proxy_pass http://$api_upstream/api/; proxy_http_version 1.1; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; @@ -34,7 +43,8 @@ http { } location /models/ { - proxy_pass http://anatomia-api:3333/models/; + set $api_upstream anatomia-api:3333; + proxy_pass http://$api_upstream/models/; proxy_http_version 1.1; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;