Files
fold-stack/nginx/dev/default.conf
T

147 lines
5.0 KiB
Plaintext
Raw Normal View History

2025-05-23 19:36:36 -05:00
server {
listen 80;
2025-05-27 03:38:18 -05:00
# Redirect root to Flame dashboard
location = / {
2025-05-27 03:38:18 -05:00
return 302 /flame/;
}
# Proxy for Flame Dashboard
location /flame/ {
proxy_pass http://flame_dashboard_dev:5005/;
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;
# Prevent caching
proxy_set_header Accept-Encoding "";
proxy_hide_header Cache-Control;
add_header Cache-Control "no-store";
# Rewrite URLs in responses
sub_filter_once off;
sub_filter_types text/css application/javascript;
2025-05-27 03:38:18 -05:00
sub_filter 'href="/' 'href="/flame/';
sub_filter 'src="/' 'src="/flame/';
sub_filter 'content="/' 'content="/flame/';
sub_filter 'url(/' 'url(/flame/';
sub_filter '"/flame/flame/' '"/flame/';
2025-05-23 19:36:36 -05:00
}
# Proxy for Ghost
2025-05-23 19:36:36 -05:00
location /ghost/ {
proxy_pass http://ghost_dev:2368/;
2025-05-27 03:38:18 -05:00
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;
2025-05-25 01:27:32 -05:00
# Prevent caching
2025-05-25 01:27:32 -05:00
proxy_set_header Accept-Encoding "";
proxy_hide_header Cache-Control;
add_header Cache-Control "no-store";
# Rewrite URLs in responses
2025-05-25 01:27:32 -05:00
sub_filter_once off;
sub_filter_types text/css application/javascript;
2025-05-25 01:27:32 -05:00
sub_filter 'href="/' 'href="/ghost/';
sub_filter 'src="/' 'src="/ghost/';
sub_filter 'content="/' 'content="/ghost/';
sub_filter 'url(/' 'url(/ghost/';
sub_filter '"/ghost/ghost/' '"/ghost/';
2025-05-23 19:36:36 -05:00
}
# Proxy for Forgejo
2025-05-23 19:36:36 -05:00
location /forgejo/ {
proxy_pass http://forgejo_dev:3000/;
2025-05-27 03:38:18 -05:00
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;
2025-05-23 19:36:36 -05:00
# Prevent caching
2025-05-25 01:27:32 -05:00
proxy_set_header Accept-Encoding "";
proxy_hide_header Cache-Control;
add_header Cache-Control "no-store";
# Rewrite URLs in responses
2025-05-25 01:27:32 -05:00
sub_filter_once off;
sub_filter_types text/css application/javascript;
2025-05-23 19:36:36 -05:00
sub_filter 'href="/' 'href="/forgejo/';
sub_filter 'src="/' 'src="/forgejo/';
2025-05-25 01:27:32 -05:00
sub_filter 'content="/' 'content="/forgejo/';
sub_filter 'url(/' 'url(/forgejo/';
2025-05-27 03:38:18 -05:00
sub_filter '"/forgejo/forgejo/' '"/forgejo/';
}
# Proxy for Trilium
location /trilium/ {
proxy_pass http://trilium_dev:8080/;
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;
# Prevent caching
proxy_set_header Accept-Encoding "";
proxy_hide_header Cache-Control;
add_header Cache-Control "no-store";
# Rewrite URLs in responses
sub_filter_once off;
sub_filter_types text/css application/javascript;
2025-05-27 03:38:18 -05:00
sub_filter 'href="/' 'href="/trilium/';
sub_filter 'src="/' 'src="/trilium/';
sub_filter 'content="/' 'content="/trilium/';
sub_filter 'url(/' 'url(/trilium/';
sub_filter '"/trilium/trilium/' '"/trilium/';
}
# Proxy for HedgeDoc
location /hedgedoc/ {
proxy_pass http://hedgedoc_dev:3000/;
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;
# Prevent caching
proxy_set_header Accept-Encoding "";
proxy_hide_header Cache-Control;
add_header Cache-Control "no-store";
# Rewrite URLs in responses
sub_filter_once off;
sub_filter_types text/css application/javascript;
2025-05-27 03:38:18 -05:00
sub_filter 'href="/' 'href="/hedgedoc/';
sub_filter 'src="/' 'src="/hedgedoc/';
sub_filter 'content="/' 'content="/hedgedoc/';
sub_filter 'url(/' 'url(/hedgedoc/';
sub_filter '"/hedgedoc/hedgedoc/' '"/hedgedoc/';
}
# Proxy for Nextcloud
location /nextcloud/ {
proxy_pass http://nextcloud_dev:80/;
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;
# Prevent caching
proxy_set_header Accept-Encoding "";
proxy_hide_header Cache-Control;
add_header Cache-Control "no-store";
# Rewrite URLs in responses
sub_filter_once off;
sub_filter_types text/css application/javascript;
2025-05-27 03:38:18 -05:00
sub_filter 'href="/' 'href="/nextcloud/';
sub_filter 'src="/' 'src="/nextcloud/';
sub_filter 'content="/' 'content="/nextcloud/';
sub_filter 'url(/' 'url(/nextcloud/';
sub_filter '"/nextcloud/nextcloud/' '"/nextcloud/';
2025-05-23 19:36:36 -05:00
}
}