Absorbs the separate control-panel git repo as a subdirectory. Instances and backups directories excluded via .gitignore. Bunker Admin
82 lines
2.8 KiB
Handlebars
82 lines
2.8 KiB
Handlebars
# Changemaker Lite Nginx — Instance: {{name}}
|
|
# Routes all traffic through single entry point
|
|
|
|
server {
|
|
listen 80 default_server;
|
|
server_name localhost _;
|
|
add_header X-Frame-Options "SAMEORIGIN" always;
|
|
|
|
# Admin GUI + Public pages (default)
|
|
location / {
|
|
set $upstream_admin http://{{containerPrefix}}-admin:3000;
|
|
proxy_pass $upstream_admin;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
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;
|
|
}
|
|
|
|
{{#if enableMedia}}
|
|
# Media API admin routes (must come BEFORE /api/ for longest prefix match)
|
|
# Rewrites /api/media/* to /api/* on media-api
|
|
location /api/media/ {
|
|
set $upstream_media http://{{containerPrefix}}-media-api:4100;
|
|
rewrite ^/api/media/(.*) /api/$1 break;
|
|
proxy_pass $upstream_media;
|
|
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;
|
|
|
|
# Large upload support
|
|
client_max_body_size 10G;
|
|
proxy_read_timeout 3600s;
|
|
proxy_connect_timeout 75s;
|
|
proxy_request_buffering off;
|
|
|
|
# WebSocket support
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
}
|
|
|
|
# Media API routes rewrite (matches Vite dev proxy behavior)
|
|
# Rewrites /media/* to /api/* on media-api (port 4100)
|
|
location /media/ {
|
|
set $upstream_media_default http://{{containerPrefix}}-media-api:4100;
|
|
rewrite ^/media/(.*) /api/$1 break;
|
|
proxy_pass $upstream_media_default;
|
|
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;
|
|
|
|
# Large upload support
|
|
client_max_body_size 10G;
|
|
proxy_read_timeout 3600s;
|
|
proxy_connect_timeout 75s;
|
|
proxy_request_buffering off;
|
|
|
|
# WebSocket support
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
}
|
|
{{/if}}
|
|
|
|
# Express API
|
|
location /api/ {
|
|
set $upstream_api http://{{containerPrefix}}-api:4000;
|
|
proxy_pass $upstream_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_read_timeout 3600s;
|
|
}
|
|
}
|