default.conf
1 server { 2 listen 80; 3 4 # Redirect root to Flame dashboard 5 location = / { 6 return 302 /flame/; 7 } 8 9 # Proxy for Flame Dashboard 10 location /flame/ { 11 proxy_pass http://flame_dashboard_dev:5005/; 12 proxy_set_header Host $host; 13 proxy_set_header X-Real-IP $remote_addr; 14 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 15 proxy_set_header X-Forwarded-Proto $scheme; 16 17 # Prevent caching 18 proxy_set_header Accept-Encoding ""; 19 proxy_hide_header Cache-Control; 20 add_header Cache-Control "no-store"; 21 22 # Rewrite URLs in responses 23 sub_filter_once off; 24 sub_filter_types text/css application/javascript; 25 sub_filter 'href="/' 'href="/flame/'; 26 sub_filter 'src="/' 'src="/flame/'; 27 sub_filter 'content="/' 'content="/flame/'; 28 sub_filter 'url(/' 'url(/flame/'; 29 sub_filter '"/flame/flame/' '"/flame/'; 30 } 31 32 # Proxy for Ghost 33 location /ghost/ { 34 proxy_pass http://ghost_dev:2368/; 35 proxy_set_header Host $host; 36 proxy_set_header X-Real-IP $remote_addr; 37 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 38 proxy_set_header X-Forwarded-Proto $scheme; 39 40 # Prevent caching 41 proxy_set_header Accept-Encoding ""; 42 proxy_hide_header Cache-Control; 43 add_header Cache-Control "no-store"; 44 45 # Rewrite URLs in responses 46 sub_filter_once off; 47 sub_filter_types text/css application/javascript; 48 sub_filter 'href="/' 'href="/ghost/'; 49 sub_filter 'src="/' 'src="/ghost/'; 50 sub_filter 'content="/' 'content="/ghost/'; 51 sub_filter 'url(/' 'url(/ghost/'; 52 sub_filter '"/ghost/ghost/' '"/ghost/'; 53 } 54 55 # Proxy for Forgejo 56 location /forgejo/ { 57 proxy_pass http://forgejo_dev:3000/; 58 proxy_set_header Host $host; 59 proxy_set_header X-Real-IP $remote_addr; 60 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 61 proxy_set_header X-Forwarded-Proto $scheme; 62 63 # Prevent caching 64 proxy_set_header Accept-Encoding ""; 65 proxy_hide_header Cache-Control; 66 add_header Cache-Control "no-store"; 67 68 # Rewrite URLs in responses 69 sub_filter_once off; 70 sub_filter_types text/css application/javascript; 71 sub_filter 'href="/' 'href="/forgejo/'; 72 sub_filter 'src="/' 'src="/forgejo/'; 73 sub_filter 'content="/' 'content="/forgejo/'; 74 sub_filter 'url(/' 'url(/forgejo/'; 75 sub_filter '"/forgejo/forgejo/' '"/forgejo/'; 76 } 77 78 # Proxy for Trilium 79 location /trilium/ { 80 proxy_pass http://trilium_dev:8080/; 81 proxy_set_header Host $host; 82 proxy_set_header X-Real-IP $remote_addr; 83 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 84 proxy_set_header X-Forwarded-Proto $scheme; 85 86 # Prevent caching 87 proxy_set_header Accept-Encoding ""; 88 proxy_hide_header Cache-Control; 89 add_header Cache-Control "no-store"; 90 91 # Rewrite URLs in responses 92 sub_filter_once off; 93 sub_filter_types text/css application/javascript; 94 sub_filter 'href="/' 'href="/trilium/'; 95 sub_filter 'src="/' 'src="/trilium/'; 96 sub_filter 'content="/' 'content="/trilium/'; 97 sub_filter 'url(/' 'url(/trilium/'; 98 sub_filter '"/trilium/trilium/' '"/trilium/'; 99 } 100 101 # Proxy for HedgeDoc 102 location /hedgedoc/ { 103 proxy_pass http://hedgedoc_dev:3000/; 104 proxy_set_header Host $host; 105 proxy_set_header X-Real-IP $remote_addr; 106 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 107 proxy_set_header X-Forwarded-Proto $scheme; 108 109 # Prevent caching 110 proxy_set_header Accept-Encoding ""; 111 proxy_hide_header Cache-Control; 112 add_header Cache-Control "no-store"; 113 114 # Rewrite URLs in responses 115 sub_filter_once off; 116 sub_filter_types text/css application/javascript; 117 sub_filter 'href="/' 'href="/hedgedoc/'; 118 sub_filter 'src="/' 'src="/hedgedoc/'; 119 sub_filter 'content="/' 'content="/hedgedoc/'; 120 sub_filter 'url(/' 'url(/hedgedoc/'; 121 sub_filter '"/hedgedoc/hedgedoc/' '"/hedgedoc/'; 122 } 123 124 # Proxy for Nextcloud 125 location /nextcloud/ { 126 proxy_pass http://nextcloud_dev:80/; 127 proxy_set_header Host $host; 128 proxy_set_header X-Real-IP $remote_addr; 129 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 130 proxy_set_header X-Forwarded-Proto $scheme; 131 132 # Prevent caching 133 proxy_set_header Accept-Encoding ""; 134 proxy_hide_header Cache-Control; 135 add_header Cache-Control "no-store"; 136 137 # Rewrite URLs in responses 138 sub_filter_once off; 139 sub_filter_types text/css application/javascript; 140 sub_filter 'href="/' 'href="/nextcloud/'; 141 sub_filter 'src="/' 'src="/nextcloud/'; 142 sub_filter 'content="/' 'content="/nextcloud/'; 143 sub_filter 'url(/' 'url(/nextcloud/'; 144 sub_filter '"/nextcloud/nextcloud/' '"/nextcloud/'; 145 } 146 }