Files
proxmox/config/nginx/sankofa-phoenix-api-hub.example.conf
2026-04-13 21:41:14 -07:00

66 lines
1.9 KiB
Plaintext

# Tier-1 API hub: one nginx listener; path-based routes to internal Phoenix + dbis_core.
# Upstreams = loopback on same LXC after you colocate processes, or LAN IPs during migration.
#
# Adjust upstream addresses/ports to match ALL_VMIDS_ENDPOINTS / your compose layout.
upstream sankofa_phoenix_graphql {
server 127.0.0.1:4000;
keepalive 32;
}
upstream dbis_core_rest {
server 127.0.0.1:3000;
keepalive 32;
}
server {
listen 8080;
server_name _;
# Optional: restrict to NPM / LAN source IPs
# allow 192.168.11.0/24;
# deny all;
location = /health {
default_type application/json;
return 200 '{"status":"hub-up"}';
}
location /graphql {
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 X-Forwarded-Proto $scheme;
proxy_read_timeout 300s;
proxy_pass http://sankofa_phoenix_graphql;
}
location /graphql-ws {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Accept-Encoding "";
proxy_buffering off;
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 X-Forwarded-Proto $scheme;
proxy_read_timeout 3600s;
proxy_pass http://sankofa_phoenix_graphql;
}
location /api/ {
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 X-Forwarded-Proto $scheme;
proxy_pass http://dbis_core_rest;
}
location /api-docs {
proxy_pass http://dbis_core_rest;
}
}