fix: web API 502 — use Podman-local DNS for gateway proxy

Mount nginx template with NGINX_LOCAL_RESOLVERS and require web→gateway health in deploy checks.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
whm
2026-08-07 01:00:29 +08:00
parent e571e98387
commit cddf95594e
6 changed files with 62 additions and 27 deletions

41
web/nginx.conf.template Normal file
View File

@@ -0,0 +1,41 @@
# 请求时解析 gateway避免启动时 DNS 未就绪导致 emerg
# ${NGINX_LOCAL_RESOLVERS} 由官方入口在 NGINX_ENTRYPOINT_LOCAL_RESOLVERS 开启时从 /etc/resolv.conf 注入。
resolver ${NGINX_LOCAL_RESOLVERS} valid=10s ipv6=off;
server {
listen 80;
server_name _;
root /usr/share/nginx/html;
index index.html;
location /api/ {
set $gw_upstream gateway:8180;
proxy_pass http://$gw_upstream;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Authorization $http_authorization;
client_max_body_size 64m;
}
location /ai/ {
set $gw_upstream gateway:8180;
proxy_pass http://$gw_upstream;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header Authorization $http_authorization;
client_max_body_size 64m;
}
location /gateway/ {
set $gw_upstream gateway:8180;
proxy_pass http://$gw_upstream;
proxy_http_version 1.1;
proxy_set_header Host $host;
}
location / {
try_files $uri $uri/ /index.html;
}
}