├── .github
├── FUNDING.yml
├── workflows
│ ├── call-invalid-issues-cron.yml
│ └── call-issue-pr-tracker.yml
├── ISSUE_TEMPLATE
│ ├── config.yml
│ ├── issue.feature.yml
│ └── issue.bug.yml
├── dependabot.yml
├── ISSUE_TEMPLATE.md
├── CONTRIBUTING.md
└── PULL_REQUEST_TEMPLATE.md
├── .gitignore
├── .editorconfig
├── .gitattributes
├── dnsdist.subdomain.conf.sample
├── tinyauth.subdomain.conf.sample
├── gitea.subfolder.conf.sample
├── forgejo.subfolder.conf.sample
├── medusa.subfolder.conf.sample
├── couchpotato.subfolder.conf.sample
├── flaresolverr.subfolder.conf.sample
├── heimdall.subfolder.conf.sample
├── lazylibrarian.subfolder.conf.sample
├── authelia.subdomain.conf.sample
├── qui.subfolder.conf.sample
├── adminer.subfolder.conf.sample
├── petio.subfolder.conf.sample
├── monitorr.subfolder.conf.sample
├── webtop.subfolder.conf.sample
├── metube.subfolder.conf.sample
├── slskd.subfolder.conf.sample
├── airsonic.subfolder.conf.sample
├── dockge.subfolder.conf.sample
├── domoticz.subfolder.conf.sample
├── authentik.subdomain.conf.sample
├── flood.subfolder.conf.sample
├── gotify.subfolder.conf.sample
├── kanzi.subfolder.conf.sample
├── scope.subfolder.conf.sample
├── spoolman.subfolder.conf.sample
├── autobrr.subfolder.conf.sample
├── booksonic.subfolder.conf.sample
├── lychee.subfolder.conf.sample
├── znc.subfolder.conf.sample
├── picard.subfolder.conf.sample
├── filebot.subfolder.conf.sample
├── glances.subfolder.conf.sample
├── netdata.subfolder.conf.sample
├── plexwebtools.subfolder.conf.sample
├── smokeping.subfolder.conf.sample
├── crontabui.subfolder.conf.sample
├── gatus.subfolder.conf.sample
├── mylar.subfolder.conf.sample
├── planka.subfolder.conf.sample
├── thelounge.subfolder.conf.sample
├── phpmyadmin.subfolder.conf.sample
├── audiobookshelf.subfolder.conf.sample
├── deluge.subfolder.conf.sample
├── guacamole.subfolder.conf.sample
├── pyload.subfolder.conf.sample
├── sickrage.subfolder.conf.sample
├── jellyfin.subfolder.conf.sample
├── sickchill.subfolder.conf.sample
├── headphones.subfolder.conf.sample
├── duplicati.subfolder.conf.sample
├── shinobi.subfolder.conf.sample
├── beets.subfolder.conf.sample
├── ghost.subfolder.conf.sample
├── wordpress.subfolder.conf.sample
├── organizr.subfolder.conf.sample
├── mytinytodo.subfolder.conf.sample
├── chronograf.subfolder.conf.sample
├── gaps.subfolder.conf.sample
├── monica.subfolder.conf.sample
├── quassel-web.subfolder.conf.sample
├── miniflux.subfolder.conf.sample
├── dozzle.subfolder.conf.sample
├── emby.subdomain.conf.sample
├── jfa-go.subfolder.conf.sample
├── lidarr.subfolder.conf.sample
├── radarr.subfolder.conf.sample
├── sonarr.subfolder.conf.sample
├── dokuwiki.subfolder.conf.sample
├── readarr.subfolder.conf.sample
├── whisparr.subfolder.conf.sample
├── freshrss.subfolder.conf.sample
├── ddns-updater.subfolder.conf.sample
├── bazarr.subfolder.conf.sample
├── kavita.subfolder.conf.sample
├── beszel.subfolder.conf.sample
├── ubooquity.subfolder.conf.sample
├── emby.subfolder.conf.sample
├── homepage.subfolder.conf.sample
├── sabnzbd.subfolder.conf.sample
├── paperless.subfolder.conf.sample
├── youtube-dl.subfolder.conf.sample
├── linkwarden.subfolder.conf.sample
├── sonarrtorss.subfolder.conf.sample
├── rclone.subfolder.conf.sample
├── flexget.subfolder.conf.sample
├── komga.subfolder.conf.sample
├── syncthing.subfolder.conf.sample
├── jenkins.subfolder.conf.sample
├── jackett.subfolder.conf.sample
├── themepark.subfolder.conf.sample
├── portainer.subfolder.conf.sample
├── prowlarr.subfolder.conf.sample
├── semaphore.subfolder.conf.sample
├── nextcloud.subdomain.conf.sample
├── organizr-auth.subfolder.conf.sample
├── grafana.subfolder.conf.sample
├── code-server.subdomain.conf.sample
├── tvheadend.subfolder.conf.sample
├── mealie.subdomain.conf.sample
├── transmission.subfolder.conf.sample
├── synapse.subdomain.conf.sample
├── qui.subdomain.conf.sample
├── znc.subdomain.conf.sample
├── atuin.subdomain.conf.sample
├── dashy.subdomain.conf.sample
├── drone.subdomain.conf.sample
├── homer.subdomain.conf.sample
├── petio.subdomain.conf.sample
├── photoprism.subdomain.conf.sample
├── romm.subdomain.conf.sample
├── dsmrreader.subdomain.conf.sample
├── grav.subdomain.conf.sample
├── mailu.subdomain.conf.sample
├── ntfy.subdomain.conf.sample
├── pinry.subdomain.conf.sample
├── fenrus.subdomain.conf.sample
├── flood.subdomain.conf.sample
├── ghost.subdomain.conf.sample
├── gotify.subdomain.conf.sample
├── homarr.subdomain.conf.sample
├── kanzi.subdomain.conf.sample
├── kopia.subdomain.conf.sample
├── lldap.subdomain.conf.sample
├── lychee.subdomain.conf.sample
├── matomo.subdomain.conf.sample
├── mylar.subdomain.conf.sample
├── nocodb.subdomain.conf.sample
├── nzbget.subfolder.conf.sample
├── piwigo.subdomain.conf.sample
├── pydio.subdomain.conf.sample
├── shlink.subdomain.conf.sample
├── tdarr.subdomain.conf.sample
├── wizarr.subdomain.conf.sample
├── yacht.subdomain.conf.sample
├── budge.subdomain.conf.sample
├── deluge.subdomain.conf.sample
└── dockge.subdomain.conf.sample
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | github: linuxserver
2 | open_collective: linuxserver
3 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Ignore everything
2 | *
3 |
4 | # Do NOT ignore allowed files
5 | !.editorconfig
6 | !.gitattributes
7 | !.github
8 | !.github/**
9 | !.gitignore
10 | !*.conf.sample
11 | !LICENSE
12 | !README.md
13 |
--------------------------------------------------------------------------------
/.github/workflows/call-invalid-issues-cron.yml:
--------------------------------------------------------------------------------
1 | name: Mark stale issues and pull requests
2 | on:
3 | workflow_dispatch:
4 | schedule:
5 | - cron: "30 1 * * *"
6 |
7 | jobs:
8 | stale:
9 | permissions:
10 | issues: write
11 | pull-requests: write
12 | uses: linuxserver/github-workflows/.github/workflows/issues-cron.yml@v1
13 | secrets: inherit
14 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | # top-most EditorConfig file
2 | root = true
3 |
4 | # Unix-style newlines with a newline ending every file
5 | [*]
6 | end_of_line = lf
7 | insert_final_newline = true
8 | # trim_trailing_whitespace may cause unintended issues and should not be globally set true
9 | trim_trailing_whitespace = false
10 |
11 | [{*.conf,*.conf.sample}]
12 | indent_style = space
13 | indent_size = 4
14 | trim_trailing_whitespace = true
15 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
4 | # Custom for Visual Studio
5 | *.cs diff=csharp
6 |
7 | # Standard to msysgit
8 | *.doc diff=astextplain
9 | *.DOC diff=astextplain
10 | *.docx diff=astextplain
11 | *.DOCX diff=astextplain
12 | *.dot diff=astextplain
13 | *.DOT diff=astextplain
14 | *.pdf diff=astextplain
15 | *.PDF diff=astextplain
16 | *.rtf diff=astextplain
17 | *.RTF diff=astextplain
18 |
--------------------------------------------------------------------------------
/.github/workflows/call-issue-pr-tracker.yml:
--------------------------------------------------------------------------------
1 | name: Issue & PR Tracker
2 |
3 | on:
4 | issues:
5 | types: [opened,reopened,labeled,unlabeled,closed]
6 | pull_request_target:
7 | types: [opened,reopened,review_requested,review_request_removed,labeled,unlabeled,closed]
8 | pull_request_review:
9 | types: [submitted,edited,dismissed]
10 |
11 | jobs:
12 | manage-project:
13 | permissions:
14 | issues: write
15 | uses: linuxserver/github-workflows/.github/workflows/issue-pr-tracker.yml@v1
16 | secrets: inherit
17 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | blank_issues_enabled: false
2 | contact_links:
3 | - name: Discord chat support
4 | url: https://discord.gg/YWrKVTn
5 | about: Realtime support / chat with the community and the team.
6 |
7 | - name: Discourse discussion forum
8 | url: https://discourse.linuxserver.io
9 | about: Post on our community forum.
10 |
11 | - name: Documentation
12 | url: https://docs.linuxserver.io/general/swag#preset-proxy-confs
13 | about: Documentation - information about how this repository works with SWAG.
14 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | # To get started with Dependabot version updates, you'll need to specify which
2 | # package ecosystems to update and where the package manifests are located.
3 | # Please see the documentation for all configuration options:
4 | # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5 |
6 | version: 2
7 | updates:
8 | - package-ecosystem: "github-actions" # See documentation for possible values
9 | directory: "/" # Location of package manifests
10 | schedule:
11 | interval: "weekly"
12 |
--------------------------------------------------------------------------------
/dnsdist.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your container is named dnsdist
3 | # make sure that your dns has a cname set for dnsdist
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name dnsdist.*;
12 |
13 | location /dns-query {
14 | include /config/nginx/proxy.conf;
15 | include /config/nginx/resolver.conf;
16 | set $upstream_app dnsdist;
17 | set $upstream_port 443;
18 | set $upstream_proto grpc;
19 | grpc_pass grpcs://$upstream_app:$upstream_port;
20 |
21 | proxy_set_header Range $http_range;
22 | proxy_set_header If-Range $http_if_range;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/tinyauth.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your tinyauth container is named tinyauth
3 | # make sure that your dns has a cname set for tinyauth
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name tinyauth.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | location / {
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app tinyauth;
22 | set $upstream_port 3000;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/gitea.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your gitea container is named gitea
3 | # make sure that gitea is set to work with the base url /gitea/
4 | # The following parameters in /data/gitea/conf/app.ini should be edited to match your setup
5 | # [server]
6 | # SSH_DOMAIN = example.com:2222
7 | # ROOT_URL = https://example.com/gitea/
8 | # DOMAIN = example.com
9 |
10 | location /gitea {
11 | return 301 $scheme://$host/gitea/;
12 | }
13 |
14 | location ^~ /gitea/ {
15 | include /config/nginx/proxy.conf;
16 | include /config/nginx/resolver.conf;
17 | set $upstream_app gitea;
18 | set $upstream_port 3000;
19 | set $upstream_proto http;
20 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
21 |
22 | rewrite /gitea(.*) $1 break;
23 | }
24 |
--------------------------------------------------------------------------------
/forgejo.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2024/04/20
2 | # make sure that your forgejo container is named forgejo
3 | # make sure that forgejo is set to work with the base url /forgejo/
4 | # The following parameters in /data/forgejo/conf/app.ini should be edited to match your setup
5 | # or set as ENV vars in your container
6 | # [server]
7 | # SSH_DOMAIN = example.com:2222
8 | # ROOT_URL = https://example.com/forgejo/
9 | # DOMAIN = example.com
10 |
11 | location /forgejo {
12 | return 301 $scheme://$host/forgejo/;
13 | }
14 |
15 | location ^~ /forgejo/ {
16 | include /config/nginx/proxy.conf;
17 | include /config/nginx/resolver.conf;
18 | set $upstream_app forgejo;
19 | set $upstream_port 3000;
20 | set $upstream_proto http;
21 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
22 |
23 | rewrite /forgejo(.*) $1 break;
24 | }
25 |
--------------------------------------------------------------------------------
/medusa.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your medusa container is named medusa
3 | # make sure that medusa is set to work with the base url /medusa/
4 |
5 | location ^~ /medusa {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app medusa;
22 | set $upstream_port 8081;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | [linuxserverurl]: https://linuxserver.io
4 | [][linuxserverurl]
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | ## Thanks, team linuxserver.io
21 |
22 |
--------------------------------------------------------------------------------
/couchpotato.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your couchpotato container is named couchpotato
3 | # make sure that couchpotato is set to work with the base url /couchpotato/
4 |
5 | location ^~ /couchpotato {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app couchpotato;
22 | set $upstream_port 5050;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/flaresolverr.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2024/01/19
2 | # make sure that your flaresolverr container is named flaresolverr
3 | # make sure that sonarr is set to work with the base url /flaresolverr/
4 |
5 | location ^~ /flaresolverr {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app flaresolverr;
22 | set $upstream_port 8191;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/heimdall.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your heimdall container is named heimdall
3 | # In order to use this location block you need to edit the default file one folder up and comment out the / location
4 |
5 | location / {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app heimdall;
22 | set $upstream_port 443;
23 | set $upstream_proto https;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/lazylibrarian.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your lazylibrarian container is named lazylibrarian
3 | # make sure that lazylibrarian is set to work with the base url /lazylibrarian/
4 |
5 | location ^~ /lazylibrarian {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app lazylibrarian;
22 | set $upstream_port 5299;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/issue.feature.yml:
--------------------------------------------------------------------------------
1 | # Based on the issue template
2 | name: Feature request
3 | description: Suggest an idea for this project. NOT TEMPLATE REQUESTS
4 | title: "[FEAT]
"
5 | labels: [enhancement]
6 | body:
7 | - type: checkboxes
8 | attributes:
9 | label: Is this a new feature request?
10 | description: Please search to see if a feature request already exists.
11 | options:
12 | - label: I have searched the existing issues
13 | required: true
14 | - type: textarea
15 | attributes:
16 | label: Wanted change
17 | description: Tell us what you want to happen.
18 | validations:
19 | required: true
20 | - type: textarea
21 | attributes:
22 | label: Reason for change
23 | description: Justify your request, why do you want it, what is the benefit.
24 | validations:
25 | required: true
26 | - type: textarea
27 | attributes:
28 | label: Proposed code change
29 | description: Do you have a potential code change in mind?
30 | validations:
31 | required: false
32 |
--------------------------------------------------------------------------------
/authelia.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your authelia container is named authelia
3 | # make sure that your dns has a cname set for authelia
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name authelia.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | location / {
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app authelia;
22 | set $upstream_port 9091;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
28 | location ~ (/authelia)?/api {
29 | include /config/nginx/proxy.conf;
30 | include /config/nginx/resolver.conf;
31 | set $upstream_app authelia;
32 | set $upstream_port 9091;
33 | set $upstream_proto http;
34 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
35 |
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/qui.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/08/28
2 | # make sure that your qui container is named qui
3 | # make sure that qui is set to work with the base url /qui/
4 |
5 |
6 | location /qui {
7 | return 301 $scheme://$host/qui/;
8 | }
9 |
10 | location ^~ /qui/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app qui;
27 | set $upstream_port 7476;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/adminer.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your adminer container is named adminer
3 | # adminer does not require a base url setting
4 |
5 | location /adminer {
6 | return 301 $scheme://$host/adminer/;
7 | }
8 |
9 | location ^~ /adminer/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app adminer;
26 | set $upstream_port 8080;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/petio.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your petio container is named petio
3 | # make sure that petio is set to work with the base url /petio/
4 |
5 | location /petio {
6 | return 301 $scheme://$host/petio/;
7 | }
8 |
9 | location ^~ /petio/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app petio;
26 | set $upstream_port 7777;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/monitorr.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your monitorr container is named monitorr
3 | # monitorr does not require a base url setting
4 |
5 | location /monitorr {
6 | return 301 $scheme://$host/monitorr/;
7 | }
8 |
9 | location ^~ /monitorr/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app monitorr;
26 | set $upstream_port 80;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/webtop.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2024/02/14
2 | # make sure that your webtop container is named webtop
3 | # make sure that webtop is set to work with the base url /webtop/
4 | # works with any KasmVNC based image
5 |
6 | location ^~ /webtop {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app webtop;
23 | set $upstream_port 3000;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | proxy_buffering off;
28 |
29 | }
30 |
--------------------------------------------------------------------------------
/metube.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your metube container is named metube
3 | # make sure that metube is set to work with the base url /metube/
4 | # set the URL_PREFIX environment variable for the metube container to "/metube"
5 |
6 | location /metube {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app metube;
23 | set $upstream_port 8081;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/slskd.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your slskd container is named slskd
3 | # make sure that slskd is set to work with the base url /slskd/
4 | # first edit the slskd.yml and set 'url_base: /slskd' and restart the slskd container
5 |
6 | location ^~ /slskd {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app slskd;
23 | set $upstream_port 5000;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/airsonic.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your airsonic container is named airsonic
3 | # make sure that airsonic is set to work with the base url /airsonic/
4 | # set the CONTEXT_PATH variable to /airsonic in airsonic container.
5 |
6 | location ^~ /airsonic {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app airsonic;
23 | set $upstream_port 4040;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/dockge.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your dockge container is named dockge
3 | # make sure that dockge is set to work with the base url /dockge/
4 |
5 |
6 | location /dockge {
7 | return 301 $scheme://$host/dockge/;
8 | }
9 |
10 | location ^~ /dockge/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app dockge;
27 | set $upstream_port 5001;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/domoticz.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your domoticz container is named domoticz
3 | # make sure that domoticz is set to work with the base url /domoticz/
4 | # set the WEBROOT variable to domoticz for the domoticz container.
5 |
6 | location ^~ /domoticz/ {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app domoticz;
23 | set $upstream_port 8080;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/authentik.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your authentik container is named authentik-server
3 | # make sure that your dns has a cname set for authentik
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name authentik.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | location / {
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app authentik-server;
22 | set $upstream_port 9000;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
28 | location ~ (/authentik)?/api {
29 | include /config/nginx/proxy.conf;
30 | include /config/nginx/resolver.conf;
31 | set $upstream_app authentik-server;
32 | set $upstream_port 9000;
33 | set $upstream_proto http;
34 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
35 |
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/flood.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your flood container is named flood
3 | # flood does not require a base url setting
4 |
5 | location /flood {
6 | return 301 $scheme://$host/flood/;
7 | }
8 |
9 | location ^~ /flood/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app flood;
26 | set $upstream_port 3000;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /flood(.*) $1 break;
31 | }
32 |
--------------------------------------------------------------------------------
/gotify.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your gotify container is named gotify
3 | # gotify does not require a base url setting
4 |
5 | location /gotify {
6 | return 301 $scheme://$host/gotify/;
7 | }
8 |
9 | location /gotify/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app gotify;
26 | set $upstream_port 80;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 | rewrite ^/gotify(/.*) $1 break;
30 | }
31 |
--------------------------------------------------------------------------------
/kanzi.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your kanzi container is named kanzi
3 | # kanzi does not require a base url setting
4 |
5 | location /kanzi {
6 | return 301 $scheme://$host/kanzi/;
7 | }
8 |
9 | location ^~ /kanzi/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app kanzi;
26 | set $upstream_port 8000;
27 | set $upstream_proto https;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /kanzi(.*) $1 break;
31 | }
32 |
--------------------------------------------------------------------------------
/scope.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your scope container is named scope
3 | # scope does not require a base url setting
4 |
5 | location /scope {
6 | return 301 $scheme://$host/scope/;
7 | }
8 |
9 | location ^~ /scope/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app scope;
26 | set $upstream_port 4040;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /scope(.*) $1 break;
31 | }
32 |
--------------------------------------------------------------------------------
/spoolman.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/03/27
2 | # make sure that your spoolman container is named spoolman
3 | # make sure that spoolman is set to work with the base url /spoolman/
4 |
5 |
6 | location /spoolman {
7 | return 301 $scheme://$host/spoolman/;
8 | }
9 |
10 | location ^~ /spoolman/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app spoolman;
27 | set $upstream_port 8000;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 | }
--------------------------------------------------------------------------------
/autobrr.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/08/23
2 | # make sure that your autobrr container is named autobrr
3 | # make sure that autobrr is set to work with the base url /autobrr/
4 |
5 |
6 | location /autobrr {
7 | return 301 $scheme://$host/autobrr/;
8 | }
9 |
10 | location ^~ /autobrr/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app autobrr;
27 | set $upstream_port 7474;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/booksonic.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your booksonic container is named booksonic
3 | # make sure that booksonic is set to work with the base url /booksonic/
4 | # set the CONTEXT_PATH variable to /booksonic in booksonic container.
5 |
6 | location ^~ /booksonic {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app booksonic;
23 | set $upstream_port 4040;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/lychee.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your lychee container is named lychee
3 | # lychee does not require a base url setting
4 |
5 | location /lychee {
6 | return 301 $scheme://$host/lychee/;
7 | }
8 |
9 | location /lychee/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app lychee;
26 | set $upstream_port 80;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /lychee(.*) $1 break;
31 | }
32 |
--------------------------------------------------------------------------------
/znc.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your znc container is named znc
3 | # make sure that znc is set to work with the base url /znc/
4 | # edit /config/configs/znc.conf and add URIPrefix = /znc/ in the line above and restart the znc container
5 |
6 | location /znc {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app znc;
23 | set $upstream_port 6501;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/picard.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your picard container is named picard
3 | # picard does not require a base url setting
4 |
5 | location /picard {
6 | return 301 $scheme://$host/picard/;
7 | }
8 |
9 | location ^~ /picard/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app picard;
26 | set $upstream_port 5800;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /picard(.*) $1 break;
31 | }
32 |
--------------------------------------------------------------------------------
/filebot.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your filebot container is named filebot
3 | # filebot does not require a base url setting
4 |
5 | location /filebot {
6 | return 301 $scheme://$host/filebot/;
7 | }
8 |
9 | location ^~ /filebot/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app filebot;
26 | set $upstream_port 5800;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /filebot(.*) $1 break;
31 | }
32 |
--------------------------------------------------------------------------------
/glances.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your glances container is named glances
3 | # glances does not require a base url setting
4 |
5 | location /glances {
6 | return 301 $scheme://$host/glances/;
7 | }
8 |
9 | location ^~ /glances/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app glances;
26 | set $upstream_port 61208;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /glances(.*) $1 break;
31 | }
32 |
--------------------------------------------------------------------------------
/netdata.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your netdata container is named netdata
3 | # netdata does not require a base url setting
4 |
5 | location /netdata {
6 | return 301 $scheme://$host/netdata/;
7 | }
8 |
9 | location ^~ /netdata/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app netdata;
26 | set $upstream_port 19999;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /netdata(.*) $1 break;
31 | }
32 |
--------------------------------------------------------------------------------
/plexwebtools.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your plex container is named plex
3 | # make sure that plexwebtools is set to work with the base url /plexwebtools/
4 |
5 | location /plexwebtools {
6 | return 301 $scheme://$host/plexwebtools/;
7 | }
8 |
9 | location ^~ /plexwebtools/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app plex;
26 | set $upstream_port 33400;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/smokeping.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your smokeping container is named smokeping
3 | # make sure that smokeping is set to work with the base url /smokeping/
4 | # smokeping already uses the base url /smokeping by default so you don't need to do anything extra
5 |
6 | location ^~ /smokeping {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app smokeping;
23 | set $upstream_port 80;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/crontabui.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your crontabui container is named crontabui
3 | # crontabui does not require a base url setting
4 |
5 | location /crontabui {
6 | return 301 $scheme://$host/crontabui/;
7 | }
8 |
9 | location ^~ /crontabui/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app crontabui;
26 | set $upstream_port 8000;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /crontabui(.*) $1 break;
31 | }
32 |
--------------------------------------------------------------------------------
/gatus.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2024/02/27
2 | # make sure that your container is named
3 | # make sure that is set to work with the base url //
4 |
5 |
6 | location /gatus {
7 | return 301 $scheme://$host/gatus/;
8 | }
9 |
10 | location ^~ /gatus/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app gatus;
27 | set $upstream_port 8080;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | }
32 |
33 |
--------------------------------------------------------------------------------
/mylar.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your mylar container is named mylar
3 | # make sure that mylar is set to work with the base url /mylar/
4 | # first stop the mylar container and edit the config.ini for mylar and set http_root to /mylar and then start the mylar container
5 |
6 | location ^~ /mylar {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app mylar;
23 | set $upstream_port 8090;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/planka.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your planka container is named planka
3 | # make sure that the BASE_URL env variable in planka container is set to: BASE_URL="https://example.com/planka/"
4 |
5 |
6 | location /planka {
7 | return 301 $scheme://$host/planka/;
8 | }
9 |
10 | location ^~ /planka/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app planka;
27 | set $upstream_port 1337;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 | }
31 |
--------------------------------------------------------------------------------
/thelounge.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your thelounge container is named thelounge
3 | # thelounge does not require a base url setting
4 |
5 | location /thelounge {
6 | return 301 $scheme://$host/thelounge/;
7 | }
8 |
9 | location ^~ /thelounge/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app thelounge;
26 | set $upstream_port 9000;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /thelounge(.*) $1 break;
31 | }
32 |
--------------------------------------------------------------------------------
/phpmyadmin.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your phpmyadmin container is named phpmyadmin
3 | # phpmyadmin does not require a base url setting
4 |
5 | location /phpmyadmin {
6 | return 301 $scheme://$host/phpmyadmin/;
7 | }
8 |
9 | location ^~ /phpmyadmin/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app phpmyadmin;
26 | set $upstream_port 80;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /phpmyadmin(.*) $1 break;
31 | }
32 |
--------------------------------------------------------------------------------
/audiobookshelf.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your audiobookshelf container is named audiobookshelf
3 | # make sure that audiobookshelf is set to work with the base url /audiobookshelf/
4 | # set the CONTEXT_PATH variable to /audiobookshelf in audiobookshelf container.
5 |
6 | location ^~ /audiobookshelf {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app audiobookshelf;
23 | set $upstream_port 80;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/.github/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing to reverse-proxy-confs
2 |
3 | ## Gotchas
4 |
5 | * While contributing make sure to make all your changes before creating a Pull Request
6 | * Read, and fill the Pull Request template
7 | * If the PR is addressing an existing issue include, closes #\, in the body of the PR commit message
8 | * If you want to discuss changes, you can also bring it up in [#dev-talk](https://discordapp.com/channels/354974912613449730/757585807061155840) in our [Discord server](https://discord.gg/YWrKVTn)
9 |
10 | ### Styling
11 |
12 | * Indentation: 4 spaces
13 | * Line-endings: LF
14 | * Trailing newline: yes
15 |
16 | ### Requirements
17 |
18 | * Must have the date on the first line, in YYYY/MM/DD format
19 | * For subdomains, add a comment for a needed CNAME
20 | * If the application needs further configuration, specify this in a comment
21 |
22 | * In most cases we want the comments for Authelia, ldap and basic auth to be present
23 | * If the application has known API endpoints, we prefer these to be exempt from auth trough a location block (provided the application has security on the endpoint)
24 |
25 | * Files must not be executeable
26 |
--------------------------------------------------------------------------------
/deluge.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your deluge container is named deluge
3 | # deluge does not require a base url setting
4 |
5 | location /deluge {
6 | return 301 $scheme://$host/deluge/;
7 | }
8 |
9 | location ^~ /deluge/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app deluge;
26 | set $upstream_port 8112;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /deluge(.*) $1 break;
31 | proxy_set_header X-Deluge-Base "/deluge/";
32 | }
33 |
--------------------------------------------------------------------------------
/guacamole.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your guacamole container is named guacamole
3 | # guacamole does not require a base url setting
4 |
5 | location /guacamole {
6 | return 301 $scheme://$host/guacamole/;
7 | }
8 |
9 | location ^~ /guacamole/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app guacamole;
26 | set $upstream_port 8080;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | proxy_buffering off;
31 | rewrite /guacamole(.*) $1 break;
32 | }
33 |
--------------------------------------------------------------------------------
/pyload.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your pyload container is named pyload
3 | # make sure that pyload is set to work with the base url /pyload/
4 | # First go into pyload settings, under "Web Interface" set the "Path Prefix" to /pyload and restart the pyload container
5 | # Only works with pyload-ng
6 |
7 | location ^~ /pyload {
8 | # enable the next two lines for http auth
9 | #auth_basic "Restricted";
10 | #auth_basic_user_file /config/nginx/.htpasswd;
11 |
12 | # enable for ldap auth (requires ldap-server.conf in the server block)
13 | #include /config/nginx/ldap-location.conf;
14 |
15 | # enable for Authelia (requires authelia-server.conf in the server block)
16 | #include /config/nginx/authelia-location.conf;
17 |
18 | # enable for Authentik (requires authentik-server.conf in the server block)
19 | #include /config/nginx/authentik-location.conf;
20 |
21 | include /config/nginx/proxy.conf;
22 | include /config/nginx/resolver.conf;
23 | set $upstream_app pyload;
24 | set $upstream_port 8000;
25 | set $upstream_proto http;
26 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/sickrage.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your sickrage container is named sickrage
3 | # make sure that sickrage is set to work with the base url /sickrage/
4 | # first stop the sickrage container and edit the config.ini for sickrage and set web_root to /sickrage and then start the sickrage container
5 |
6 | location ^~ /sickrage {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app sickrage;
23 | set $upstream_port 8081;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/jellyfin.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/05/18
2 | # make sure that your jellyfin container is named jellyfin
3 | # if jellyfin is running in bridge mode and the container is named "jellyfin", the below config should work as is
4 | # if not, replace the line "set $upstream_app jellyfin;" with "set $upstream_app ;"
5 | # or "set $upstream_app ;" for host mode, HOSTIP being the IP address of jellyfin
6 | # in jellyfin settings, under "Advanced/Networking" change the public https port to 443, leave the local ports as is, set the base url to "/jellyfin"
7 |
8 | location /jellyfin {
9 | return 301 $scheme://$host/jellyfin/;
10 | }
11 |
12 | location ^~ /jellyfin/ {
13 | include /config/nginx/proxy.conf;
14 | include /config/nginx/resolver.conf;
15 | set $upstream_app jellyfin;
16 | set $upstream_port 8096;
17 | set $upstream_proto http;
18 | if ($http_user_agent ~ Web0S) {
19 | add_header Access-Control-Allow-Origin "luna://com.webos.service.config" always;
20 | }
21 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
22 |
23 | proxy_set_header Range $http_range;
24 | proxy_set_header If-Range $http_if_range;
25 | }
26 |
--------------------------------------------------------------------------------
/sickchill.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your sickchill container is named sickchill
3 | # make sure that sickchill is set to work with the base url /sickchill/
4 | # first stop the sickchill container and edit the config.ini for sickchill and set web_root to /sickchill and then start the sickchill container
5 |
6 | location ^~ /sickchill {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app sickchill;
23 | set $upstream_port 8081;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/headphones.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your headphones container is named headphones
3 | # make sure that headphones is set to work with the base url /headphones/
4 | # first stop the headphones container and edit the config.ini for headphones and set http_root to /headphones and then start the headphones container
5 |
6 | location ^~ /headphones {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app headphones;
23 | set $upstream_port 8181;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/issue.bug.yml:
--------------------------------------------------------------------------------
1 | # Based on the issue template
2 | name: Bug report
3 | description: Create a report to help us improve. NOT TEMPLATE REQUESTS
4 | title: "[BUG] "
5 | labels: [Bug]
6 | body:
7 | - type: checkboxes
8 | attributes:
9 | label: Is there an existing issue for this?
10 | description: Please search to see if an issue already exists for the bug you encountered.
11 | options:
12 | - label: I have searched the existing issues
13 | required: true
14 | - type: textarea
15 | attributes:
16 | label: Current Behavior
17 | description: Tell us what happens instead of the expected behavior.
18 | validations:
19 | required: true
20 | - type: textarea
21 | attributes:
22 | label: Expected Behavior
23 | description: Tell us what should happen.
24 | validations:
25 | required: false
26 | - type: textarea
27 | attributes:
28 | label: Steps To Reproduce
29 | description: Steps to reproduce the behavior.
30 | placeholder: |
31 | 1. In this environment...
32 | 2. With this config...
33 | 3. Run '...'
34 | 4. See error...
35 | validations:
36 | required: true
37 |
--------------------------------------------------------------------------------
/duplicati.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your duplicati container is named duplicati
3 | # duplicati does not require a base url setting
4 | # DUPLICATI AUTH WILL NOT WORK WITH THIS CONFIG, use the auth options below
5 |
6 | location /duplicati {
7 | return 301 $scheme://$host/duplicati/;
8 | }
9 |
10 | location ^~ /duplicati/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app duplicati;
27 | set $upstream_port 8200;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | rewrite /duplicati(.*) $1 break;
32 | }
33 |
--------------------------------------------------------------------------------
/shinobi.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your shinobi container is named shinobi
3 | # make sure that shinobi is set to work with the base url /shinobi/
4 | # ensure your config.json file has an entry for the base url set to /shinobi, i.e.
5 | # "baseurl":"/shinobi"
6 |
7 | location /shinobi {
8 | return 301 $scheme://$host/shinobi/;
9 | }
10 |
11 | location ^~ /shinobi/ {
12 | # enable the next two lines for http auth
13 | #auth_basic "Restricted";
14 | #auth_basic_user_file /config/nginx/.htpasswd;
15 |
16 | # enable for ldap auth (requires ldap-server.conf in the server block)
17 | #include /config/nginx/ldap-location.conf;
18 |
19 | # enable for Authelia (requires authelia-server.conf in the server block)
20 | #include /config/nginx/authelia-location.conf;
21 |
22 | # enable for Authentik (requires authentik-server.conf in the server block)
23 | #include /config/nginx/authentik-location.conf;
24 |
25 | include /config/nginx/proxy.conf;
26 | include /config/nginx/resolver.conf;
27 | set $upstream_app shinobi;
28 | set $upstream_port 8080;
29 | set $upstream_proto http;
30 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/beets.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your beets container is named beets
3 | # make sure that beets is set to work with the base url /beets/
4 | # first edit beets.yml and enable the reverse proxy settings, under "web" add "reverse_proxy: true" and restart the beets container
5 |
6 | location /beets {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app beets;
23 | set $upstream_port 8337;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | proxy_set_header X-Scheme $scheme;
28 | proxy_set_header X-Script-Name /beets;
29 | }
30 |
--------------------------------------------------------------------------------
/ghost.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your ghost container is named ghost
3 | # make sure that ghost is set to work with the base url /ghost/
4 | # Make sure you are using a subfolder in your ghost config file. https://ghost.org/docs/concepts/config/#url
5 | # Note: /ghost/ is by default used for the admin page. See https://ghost.org/docs/concepts/config/#admin-url
6 |
7 | location /blog {
8 | # enable the next two lines for http auth
9 | #uth_basic "Restricted";
10 | #auth_basic_user_file /config/nginx/.htpasswd;
11 |
12 | # enable for ldap auth (requires ldap-server.conf in the server block)
13 | #include /config/nginx/ldap-location.conf;
14 |
15 | # enable for Authelia (requires authelia-server.conf in the server block)
16 | #include /config/nginx/authelia-location.conf;
17 |
18 | # enable for Authentik (requires authentik-server.conf in the server block)
19 | #include /config/nginx/authentik-location.conf;
20 |
21 | include /config/nginx/proxy.conf;
22 | include /config/nginx/resolver.conf;
23 | set $upstream_app ghost;
24 | set $upstream_port 2368;
25 | set $upstream_proto http;
26 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/wordpress.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your wordpress container is named wordpress
3 | # make sure that wordpress is set to work with the base url /wordpress/
4 | # In order to use this location block you need to edit the default file one folder up and comment out the / location as well as the "~ \.php$" location
5 | # tested with the official wordpress docker image
6 |
7 | location / {
8 | # enable the next two lines for http auth
9 | #auth_basic "Restricted";
10 | #auth_basic_user_file /config/nginx/.htpasswd;
11 |
12 | # enable for ldap auth (requires ldap-server.conf in the server block)
13 | #include /config/nginx/ldap-location.conf;
14 |
15 | # enable for Authelia (requires authelia-server.conf in the server block)
16 | #include /config/nginx/authelia-location.conf;
17 |
18 | # enable for Authentik (requires authentik-server.conf in the server block)
19 | #include /config/nginx/authentik-location.conf;
20 |
21 | include /config/nginx/proxy.conf;
22 | include /config/nginx/resolver.conf;
23 | set $upstream_app wordpress;
24 | set $upstream_port 80;
25 | set $upstream_proto http;
26 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/organizr.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your organizr container is named organizr
3 | # In order to use this location block you need to edit the default file one folder up and comment out the / and ~ \.php$ locations
4 |
5 | location / {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app organizr;
22 | set $upstream_port 80;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
28 | # Optional redirect server errors to organizr error pages
29 | #error_page 400 402 403 404 405 408 500 502 503 504 $scheme://$host/?error=$status;
30 |
--------------------------------------------------------------------------------
/mytinytodo.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your mytinytodo container is named mytinytodo
3 | # make sure that mytinytodo is set to work with the base url /todo/
4 | # works with https://github.com/breakall/mytinytodo-docker
5 | # set the mtt_url to 'https://your.domain.com/todo/' in db/config.php
6 |
7 | location /todo {
8 | return 301 $scheme://$host/todo/;
9 | }
10 |
11 | location ^~ /todo/ {
12 | # enable the next two lines for http auth
13 | #auth_basic "Restricted";
14 | #auth_basic_user_file /config/nginx/.htpasswd;
15 |
16 | # enable for ldap auth (requires ldap-server.conf in the server block)
17 | #include /config/nginx/ldap-location.conf;
18 |
19 | # enable for Authelia (requires authelia-server.conf in the server block)
20 | #include /config/nginx/authelia-location.conf;
21 |
22 | # enable for Authentik (requires authentik-server.conf in the server block)
23 | #include /config/nginx/authentik-location.conf;
24 |
25 | include /config/nginx/proxy.conf;
26 | include /config/nginx/resolver.conf;
27 | set $upstream_app mytinytodo;
28 | set $upstream_port 80;
29 | set $upstream_proto http;
30 | proxy_pass $upstream_proto://$upstream_app:$upstream_port/;
31 | }
32 |
--------------------------------------------------------------------------------
/.github/PULL_REQUEST_TEMPLATE.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | [linuxserverurl]: https://linuxserver.io
4 | [][linuxserverurl]
5 |
6 | ------------------------------
7 |
8 | - [ ] I have read the [contributing](https://github.com/linuxserver/reverse-proxy-confs/blob/master/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications
9 |
10 | ------------------------------
11 |
12 |
13 |
14 | ## Description
15 |
16 |
17 | ## Benefits of this PR and context
18 |
19 |
20 | ## How Has This Been Tested?
21 |
22 |
23 |
24 |
25 | ## Source / References
26 |
--------------------------------------------------------------------------------
/chronograf.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your chronograf container is named chronograf
3 | # make sure that chronograf is set to work with the base url /chronograf/
4 | # add BASE_PATH=/chronograf environment variable to your docker compose/run
5 |
6 | location /chronograf {
7 | return 301 $scheme://$host/chronograf/;
8 | }
9 |
10 | location ^~ /chronograf/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app chronograf;
27 | set $upstream_port 8888;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | #rewrite /chronograf(.*) $1 break;
32 | }
33 |
--------------------------------------------------------------------------------
/gaps.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your gaps container is named gaps
3 | # make sure that gaps is set to work with the base url /gaps/
4 | # In your Docker compose (or docker run) add: BASE_URL: /gaps
5 |
6 | location /gaps {
7 | return 301 $scheme://$host/gaps/;
8 | }
9 |
10 | location ^~ /gaps/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app gaps;
27 | set $upstream_port 8484;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | # Uncomment to allow loading in an iframe (i.e. Organizr)
32 | # proxy_hide_header X-Frame-Options;
33 | }
34 |
--------------------------------------------------------------------------------
/monica.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your monica container is named monica
3 | # make sure that monica is set to work with the base url /monica/
4 | # Set the monica Docker container's APP_URL to a fully-qualified domain that ends with /monica/ and restart the container.
5 | # Example: https://yourhost.cc/monica/
6 |
7 | location /monica {
8 | return 301 $scheme://$host/monica/;
9 | }
10 |
11 | location ^~ /monica/ {
12 | # enable the next two lines for http auth
13 | #auth_basic "Restricted";
14 | #auth_basic_user_file /config/nginx/.htpasswd;
15 |
16 | # enable for ldap auth (requires ldap-server.conf in the server block)
17 | #include /config/nginx/ldap-location.conf;
18 |
19 | # enable for Authelia (requires authelia-server.conf in the server block)
20 | #include /config/nginx/authelia-location.conf;
21 |
22 | # enable for Authentik (requires authentik-server.conf in the server block)
23 | #include /config/nginx/authentik-location.conf;
24 |
25 | include /config/nginx/proxy.conf;
26 | include /config/nginx/resolver.conf;
27 | set $upstream_app monica;
28 | set $upstream_port 80;
29 | set $upstream_proto http;
30 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
31 | }
32 |
--------------------------------------------------------------------------------
/quassel-web.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your quassel-web container is named quassel-web
3 | # make sure that quassel-web is set to work with the base url /quassel/
4 | # Set base-url with docker run command env variable -e 'URL_BASE'='/quassel' and make sure Quassel-Web is running on http
5 | # with -e 'HTTPS'='false' or if you're using -e 'ADVANCED'='true' by editing config.json appropriately
6 |
7 | location ^~ /quassel {
8 | # enable the next two lines for http auth
9 | #auth_basic "Restricted";
10 | #auth_basic_user_file /config/nginx/.htpasswd;
11 |
12 | # enable for ldap auth (requires ldap-server.conf in the server block)
13 | #include /config/nginx/ldap-location.conf;
14 |
15 | # enable for Authelia (requires authelia-server.conf in the server block)
16 | #include /config/nginx/authelia-location.conf;
17 |
18 | # enable for Authentik (requires authentik-server.conf in the server block)
19 | #include /config/nginx/authentik-location.conf;
20 |
21 | include /config/nginx/proxy.conf;
22 | include /config/nginx/resolver.conf;
23 | set $upstream_app quassel-web;
24 | set $upstream_port 64080;
25 | set $upstream_proto http;
26 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/miniflux.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your miniflux container is named miniflux
3 | # make sure that miniflux is set to work with the base url /miniflux/
4 | # set the environment variable "BASE_URL" to "https://yourdomain.url/miniflux/", or follow this guide to create a config file for Miniflux: https://miniflux.app/docs/configuration.html
5 |
6 | location /miniflux {
7 | return 301 $scheme://$host/miniflux/;
8 | }
9 |
10 | location /miniflux/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app miniflux;
27 | set $upstream_port 8080;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/dozzle.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your dozzle container is named dozzle
3 | # make sure that dozzle is set to work with the base url /dozzle/
4 | # First either add "--base /dozzle" or "-e DOZZLE_BASE=/dozzle" to your docker run command, and restart the Dozzle container
5 |
6 | location /dozzle {
7 | return 301 $scheme://$host/dozzle/;
8 | }
9 |
10 | location ^~ /dozzle/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app dozzle;
27 | set $upstream_port 8080;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | chunked_transfer_encoding off;
32 | proxy_buffering off;
33 | proxy_cache off;
34 | }
35 |
--------------------------------------------------------------------------------
/emby.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your emby container is named emby
3 | # make sure that your dns has a cname set for emby
4 | # if emby is running in bridge mode and the container is named "emby", the below config should work as is
5 | # if not, replace the line "set $upstream_app emby;" with "set $upstream_app ;"
6 | # or "set $upstream_app ;" for host mode, HOSTIP being the IP address of emby
7 | # in emby settings, under "Advanced" change the public https port to 443, leave the local ports as is, set the "external domain" to your url,
8 | # and set the "Secure connection mode" to "Handled by reverse proxy"
9 |
10 | server {
11 | listen 443 ssl;
12 | # listen 443 quic;
13 | listen [::]:443 ssl;
14 | # listen [::]:443 quic;
15 |
16 | server_name emby.*;
17 |
18 | include /config/nginx/ssl.conf;
19 |
20 | client_max_body_size 0;
21 |
22 | location / {
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app emby;
26 | set $upstream_port 8096;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | proxy_set_header Range $http_range;
31 | proxy_set_header If-Range $http_if_range;
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/jfa-go.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your jfa-go container is named jfa-go
3 | # make sure to set the URL base (“Reverse Proxy subfolder”) in jfa-go > Settings > General (ui > url_base in jfa-go config.ini) to "/jfa-go/"
4 |
5 | location /jfa-go {
6 | return 301 $scheme://$host/jfa-go/;
7 | }
8 |
9 | location ^~ /jfa-go/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app jfa-go;
26 | set $upstream_port 8056;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | # Remove the CSP header set for Jellyfin
31 | proxy_hide_header Content-Security-Policy;
32 | add_header Content-Security-Policy "";
33 | }
34 |
--------------------------------------------------------------------------------
/lidarr.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your lidarr container is named lidarr
3 | # make sure that lidarr is set to work with the base url /lidarr/
4 |
5 | location ^~ /lidarr {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app lidarr;
22 | set $upstream_port 8686;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
28 | location ^~ /lidarr/api {
29 | include /config/nginx/proxy.conf;
30 | include /config/nginx/resolver.conf;
31 | set $upstream_app lidarr;
32 | set $upstream_port 8686;
33 | set $upstream_proto http;
34 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
35 |
36 | }
37 |
--------------------------------------------------------------------------------
/radarr.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your radarr container is named radarr
3 | # make sure that radarr is set to work with the base url /radarr/
4 |
5 | location ^~ /radarr {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app radarr;
22 | set $upstream_port 7878;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
28 | location ^~ /radarr/api {
29 | include /config/nginx/proxy.conf;
30 | include /config/nginx/resolver.conf;
31 | set $upstream_app radarr;
32 | set $upstream_port 7878;
33 | set $upstream_proto http;
34 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
35 |
36 | }
37 |
--------------------------------------------------------------------------------
/sonarr.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your sonarr container is named sonarr
3 | # make sure that sonarr is set to work with the base url /sonarr/
4 |
5 | location ^~ /sonarr {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app sonarr;
22 | set $upstream_port 8989;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
28 | location ^~ /sonarr/api {
29 | include /config/nginx/proxy.conf;
30 | include /config/nginx/resolver.conf;
31 | set $upstream_app sonarr;
32 | set $upstream_port 8989;
33 | set $upstream_proto http;
34 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
35 |
36 | }
37 |
--------------------------------------------------------------------------------
/dokuwiki.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your dokuwiki container is named dokuwiki
3 | # make sure that dokuwiki is set to work with the base url /dokuwiki/
4 | # first go into dokuwiki settings (Admin on the top left when Logged in), under "Configuration Settings" set the "basedir" to /dokuwiki/ and restart the dokuwiki container
5 |
6 | location /dokuwiki {
7 | return 301 $scheme://$host/dokuwiki/;
8 | }
9 |
10 | location ^~ /dokuwiki/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app dokuwiki;
27 | set $upstream_port 80;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | rewrite /dokuwiki(.*) $1 break;
32 | }
33 |
--------------------------------------------------------------------------------
/readarr.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your readarr container is named readarr
3 | # make sure that readarr is set to work with the base url /readarr/
4 |
5 | location ^~ /readarr {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app readarr;
22 | set $upstream_port 8787;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
28 | location ^~ /readarr/api {
29 | include /config/nginx/proxy.conf;
30 | include /config/nginx/resolver.conf;
31 | set $upstream_app readarr;
32 | set $upstream_port 8787;
33 | set $upstream_proto http;
34 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
35 |
36 | }
37 |
--------------------------------------------------------------------------------
/whisparr.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2024/08/04
2 | # make sure that your whisparr container is named whisparr
3 | # make sure that whisparr is set to work with the base url /whisparr/
4 |
5 | location ^~ /whisparr {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app whisparr;
22 | set $upstream_port 6969;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
28 | location ^~ /whisparr/api {
29 | include /config/nginx/proxy.conf;
30 | include /config/nginx/resolver.conf;
31 | set $upstream_app whisparr;
32 | set $upstream_port 6969;
33 | set $upstream_proto http;
34 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
35 |
36 | }
37 |
--------------------------------------------------------------------------------
/freshrss.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your freshrss container is named freshrss
3 | # freshrss does not require a base url setting
4 |
5 | location /freshrss {
6 | return 301 $scheme://$host/freshrss/;
7 | }
8 |
9 | location ^~ /freshrss/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app freshrss;
26 | set $upstream_port 80;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /freshrss(.*) $1 break;
31 | proxy_buffering off;
32 | proxy_set_header X-Forwarded-Port $server_port;
33 | proxy_cookie_path / "/; HTTPOnly; Secure";
34 | proxy_set_header Authorization $http_authorization;
35 | proxy_pass_header Authorization;
36 | }
37 |
--------------------------------------------------------------------------------
/ddns-updater.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2024/08/04
2 | # make sure that your ddns-updater container is named ddns-updater
3 | # make sure that ddns-updater is set to work with the base url /ddns-updater/
4 |
5 | location ^~ /ddns-updater {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app ddns-updater;
22 | set $upstream_port 8000;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
28 | location ^~ /ddns-updater/api {
29 | include /config/nginx/proxy.conf;
30 | include /config/nginx/resolver.conf;
31 | set $upstream_app ddns-updater;
32 | set $upstream_port 8000;
33 | set $upstream_proto http;
34 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
35 |
36 | }
37 |
--------------------------------------------------------------------------------
/bazarr.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your bazarr container is named bazarr
3 | # make sure that bazarr is set to work with the base url /bazarr/
4 |
5 | location /bazarr {
6 | return 301 $scheme://$host/bazarr/;
7 | }
8 |
9 | location ^~ /bazarr/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app bazarr;
26 | set $upstream_port 6767;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | }
31 |
32 | location ^~ /bazarr/api {
33 | include /config/nginx/proxy.conf;
34 | include /config/nginx/resolver.conf;
35 | set $upstream_app bazarr;
36 | set $upstream_port 6767;
37 | set $upstream_proto http;
38 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/kavita.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/04/13
2 | # make sure that your kavita container is named kavita
3 | # make sure that kavita is set to work with the base url /kavita/
4 |
5 | location /kavita {
6 | return 301 $scheme://$host/kavita/;
7 | }
8 |
9 | location ^~ /kavita/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app kavita;
26 | set $upstream_port 5000;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | }
31 |
32 | location ^~ /kavita/api {
33 | include /config/nginx/proxy.conf;
34 | include /config/nginx/resolver.conf;
35 | set $upstream_app kavita;
36 | set $upstream_port 5000;
37 | set $upstream_proto http;
38 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/beszel.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your beszel container is named beszel
3 | # make sure that beszel is set to work with the base url /beszel/
4 |
5 |
6 | location /beszel {
7 | return 301 $scheme://$host/beszel/;
8 | }
9 |
10 | location ^~ /beszel/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app beszel;
27 | set $upstream_port 8090;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | }
32 |
33 | location ^~ /beszel/api {
34 | include /config/nginx/proxy.conf;
35 | include /config/nginx/resolver.conf;
36 | set $upstream_app beszel;
37 | set $upstream_port 8090;
38 | set $upstream_proto http;
39 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
40 |
41 | }
42 |
--------------------------------------------------------------------------------
/ubooquity.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your ubooquity container is named ubooquity
3 | # make sure that ubooquity is set to work with the base url /ubooquity/
4 | # set the reverse proxy prefix in the admin gui to ubooquity.
5 |
6 | location ^~ /ubooquity {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app ubooquity;
23 | set $upstream_port 2202;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
29 | location ^~ /ubooquity/admin {
30 | include /config/nginx/proxy.conf;
31 | include /config/nginx/resolver.conf;
32 | set $upstream_app ubooquity;
33 | set $upstream_port 2203;
34 | set $upstream_proto http;
35 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/emby.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your emby container is named emby
3 | # emby does not require a base url setting
4 | # if emby is running in bridge mode and the container is named "emby", the below config should work as is
5 | # if not, replace the line "set $upstream_app emby;" with "set $upstream_app ;"
6 | # or "set $upstream_app ;" for host mode, HOSTIP being the IP address of emby
7 | # in emby settings, under "Advanced" change the public https port to 443, leave the local ports as is, set the "external domain" to your url and subdomain,
8 | # and set the "Secure connection mode" to "Handled by reverse proxy"
9 |
10 | location /emby {
11 | return 301 $scheme://$host/emby/;
12 | }
13 |
14 | location ^~ /emby/ {
15 | include /config/nginx/proxy.conf;
16 | include /config/nginx/resolver.conf;
17 | set $upstream_app emby;
18 | set $upstream_port 8096;
19 | set $upstream_proto http;
20 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
21 |
22 | proxy_set_header Range $http_range;
23 | proxy_set_header If-Range $http_if_range;
24 | }
25 |
26 | location ^~ /embywebsocket {
27 | include /config/nginx/proxy.conf;
28 | include /config/nginx/resolver.conf;
29 | set $upstream_app emby;
30 | set $upstream_port 8096;
31 | set $upstream_proto http;
32 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/homepage.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2024/04/09
2 | # make sure that your homepage container is named homepage
3 | # make sure that homepage is set to work with the base url /homepage/
4 | # homepage requires environment variables set thus:
5 | # environment:
6 | # - "GF_SERVER_ROOT_URL=https://my.domain.com/homepage"
7 | # - "GF_SERVER_DOMAIN=https://my.domain.com/"
8 |
9 | location ^~ /homepage/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app homepage;
26 | set $upstream_port 3000;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | # Clear Authorization Header if you are using http auth and normal homepage auth
31 | #proxy_set_header Authorization "";
32 |
33 | rewrite ^/homepage/(.*)$ /$1 break;
34 |
35 | }
36 |
--------------------------------------------------------------------------------
/sabnzbd.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your sabnzbd container is named sabnzbd
3 | # make sure that sabnzbd is set to work with the base url /sabnzbd/
4 | # sabnzbd already uses the base url /sabnzbd by default so you don't need to do anything extra
5 |
6 | location ^~ /sabnzbd {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app sabnzbd;
23 | set $upstream_port 8080;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
29 | location ^~ /sabnzbd/api {
30 | include /config/nginx/proxy.conf;
31 | include /config/nginx/resolver.conf;
32 | set $upstream_app sabnzbd;
33 | set $upstream_port 8080;
34 | set $upstream_proto http;
35 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/paperless.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your paperless container is named paperless
3 | # make sure that paperless is set to work with the base url /paperless/
4 |
5 | location /paperless {
6 | return 301 $scheme://$host/paperless/;
7 | }
8 |
9 | location ^~ /paperless/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app paperless;
26 | set $upstream_port 8000;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | }
31 |
32 | location ~ (/paperless)?/api {
33 | include /config/nginx/proxy.conf;
34 | include /config/nginx/resolver.conf;
35 | set $upstream_app paperless;
36 | set $upstream_port 8000;
37 | set $upstream_proto http;
38 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/youtube-dl.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your youtube-dl-server container is named youtube-dl-server
3 | # youtube-dl-server does not require a base url setting
4 | # Works with this youtube-dl Fork: https://github.com/nbr23/youtube-dl-server
5 |
6 | location /youtube-dl {
7 | return 301 $scheme://$host/youtube-dl/;
8 | }
9 |
10 | location ^~ /youtube-dl/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app youtube-dl-server;
27 | set $upstream_port 8080;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | proxy_set_header Referer '';
32 | # next line doesn't work with the latest version of: https://github.com/nbr23/youtube-dl-server
33 | # proxy_set_header Host $upstream_app:8080;
34 | rewrite /youtube-dl(.*) $1 break;
35 | }
36 |
--------------------------------------------------------------------------------
/linkwarden.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your linkwarden container is named linkwarden
3 | # make sure that linkwarden is set to work with the base url /linkwarden/
4 |
5 |
6 | location /linkwarden {
7 | return 301 $scheme://$host/linkwarden/;
8 | }
9 |
10 | location ^~ /linkwarden/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app linkwarden;
27 | set $upstream_port 3000;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | }
32 |
33 | location ~ (/linkwarden)?/api {
34 | include /config/nginx/proxy.conf;
35 | include /config/nginx/resolver.conf;
36 | set $upstream_app linkwarden;
37 | set $upstream_port 3000;
38 | set $upstream_proto http;
39 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
40 |
41 | }
42 |
--------------------------------------------------------------------------------
/sonarrtorss.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2024/06/21
2 | # make sure that your sonarrtorss container is named sonarrtorss
3 | # sonarrtorss does not require a base url setting
4 |
5 | location ^~ /sonarrtorss {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app sonarrtorss;
22 | set $upstream_port 18989;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | rewrite /sonarrtorss(.*) $1 break;
27 | }
28 |
29 | location ~ ^/sonarrtorss/(api/|sonarr$|rss$|atom$|json$) {
30 | include /config/nginx/proxy.conf;
31 | include /config/nginx/resolver.conf;
32 | set $upstream_app sonarrtorss;
33 | set $upstream_port 18989;
34 | set $upstream_proto http;
35 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
36 |
37 | rewrite /sonarrtorss(.*) $1 break;
38 | }
39 |
--------------------------------------------------------------------------------
/rclone.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your rclone container is named rclone
3 | # rclone does not require a base url setting
4 |
5 | location /rclone {
6 | return 301 $scheme://$host/rclone/;
7 | }
8 |
9 | location ^~ /rclone/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app rclone;
26 | set $upstream_port 5800;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /rclone(.*) $1 break;
31 | }
32 |
33 | location ^~ /rclone/websockify {
34 | include /config/nginx/proxy.conf;
35 | include /config/nginx/resolver.conf;
36 | set $upstream_app rclone;
37 | set $upstream_port 5800;
38 | set $upstream_proto http;
39 | proxy_pass $upstream_proto://$upstream_app:$upstream_port/websockify/;
40 |
41 | rewrite /rclone(.*) $1 break;
42 | }
43 |
--------------------------------------------------------------------------------
/flexget.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/12
2 | # make sure that your flexget container is named flexget
3 | # make sure that flexget is set to work with the base url /flexget/
4 | # make sure to set 'base_url: /flexget' under your flexget's config.yml web_server block
5 |
6 | location /flexget {
7 | return 301 $scheme://$host/flexget/;
8 | }
9 |
10 | location ^~ /flexget/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app flexget;
27 | set $upstream_port 5050;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 | }
31 |
32 | location ^~ /flexget/api/ {
33 | include /config/nginx/proxy.conf;
34 | include /config/nginx/resolver.conf;
35 | set $upstream_app flexget;
36 | set $upstream_port 5050;
37 | set $upstream_proto http;
38 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
39 | }
40 |
--------------------------------------------------------------------------------
/komga.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/09/05
2 | # make sure that your komga container is named komga
3 | # make sure that komga is set to work with the base url /komga/
4 | # First make sure your Container has set an Baseurl set via docker-compose File "envirnoment: SERVER_SERVLET_CONTEXT_PATH=/komga" and recreate the container.
5 |
6 | location /komga {
7 | return 301 $scheme://$host/komga/;
8 | }
9 |
10 | location ^~ /komga/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | include /config/nginx/proxy.conf;
25 | include /config/nginx/resolver.conf;
26 | set $upstream_app komga;
27 | set $upstream_port 25600 ;
28 | set $upstream_proto http;
29 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
30 |
31 | }
32 |
33 | location ^~ /komga/api {
34 | include /config/nginx/proxy.conf;
35 | include /config/nginx/resolver.conf;
36 | set $upstream_app komga;
37 | set $upstream_port 25600;
38 | set $upstream_proto http;
39 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
40 | }
41 |
--------------------------------------------------------------------------------
/syncthing.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/12
2 | # make sure that your syncthing container is named syncthing
3 | # syncthing does not require a base url setting
4 |
5 | location /syncthing {
6 | return 301 $scheme://$host/syncthing/;
7 | }
8 |
9 | location ^~ /syncthing/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app syncthing;
26 | set $upstream_port 8384;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /syncthing(.*) $1 break;
31 | proxy_hide_header Authorization;
32 | }
33 |
34 | location ^~ /syncthing/rest {
35 | include /config/nginx/proxy.conf;
36 | include /config/nginx/resolver.conf;
37 | set $upstream_app syncthing;
38 | set $upstream_port 8384;
39 | set $upstream_proto http;
40 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
41 |
42 | rewrite /syncthing(.*) $1 break;
43 | proxy_hide_header Authorization;
44 | }
45 |
--------------------------------------------------------------------------------
/jenkins.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your jenkins container is named jenkins
3 | # make sure that jenkins is set to work with the base url /jenkins/
4 | # First either add '--prefix=/jenkins' or '-e JENKINS_OPTS="--prefix=/jenkins"' to your docker run command, and restart the Jenkins container.
5 | # Also be sure to add '/jenkins/' to your URL under: Jenkins > Configuration > Manage Jenkins > Jenkins URL
6 |
7 | location /jenkins {
8 | return 301 $scheme://$host/jenkins/;
9 | }
10 |
11 | location ^~ /jenkins/ {
12 | # enable the next two lines for http auth
13 | #auth_basic "Restricted";
14 | #auth_basic_user_file /config/nginx/.htpasswd;
15 |
16 | # enable for ldap auth (requires ldap-server.conf in the server block)
17 | #include /config/nginx/ldap-location.conf;
18 |
19 | # enable for Authelia (requires authelia-server.conf in the server block)
20 | #include /config/nginx/authelia-location.conf;
21 |
22 | # enable for Authentik (requires authentik-server.conf in the server block)
23 | #include /config/nginx/authentik-location.conf;
24 |
25 | include /config/nginx/proxy.conf;
26 | include /config/nginx/resolver.conf;
27 | set $upstream_app jenkins;
28 | set $upstream_port 8080;
29 | set $upstream_proto http;
30 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
31 |
32 | # This is the maximum upload size
33 | client_max_body_size 10m;
34 | sendfile off;
35 | proxy_max_temp_file_size 0;
36 | proxy_temp_file_write_size 64k;
37 | proxy_request_buffering off;
38 | proxy_buffering off;
39 | }
40 |
--------------------------------------------------------------------------------
/jackett.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your jackett container is named jackett
3 | # make sure that jackett is set to work with the base url /jackett/
4 |
5 | location ^~ /jackett {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app jackett;
22 | set $upstream_port 9117;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
28 | location ^~ /jackett/api {
29 | include /config/nginx/proxy.conf;
30 | include /config/nginx/resolver.conf;
31 | set $upstream_app jackett;
32 | set $upstream_port 9117;
33 | set $upstream_proto http;
34 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
35 |
36 | }
37 |
38 | location ^~ /jackett/dl {
39 | include /config/nginx/proxy.conf;
40 | include /config/nginx/resolver.conf;
41 | set $upstream_app jackett;
42 | set $upstream_port 9117;
43 | set $upstream_proto http;
44 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/themepark.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your theme-park container is named theme-park
3 | # make sure that theme-park is set to work with the base url /theme-park/
4 | # If you want to change the urlbase update the TP_URLBASE env on the theme-park container.
5 |
6 | location /themepark {
7 | return 301 $scheme://$host/themepark/;
8 | }
9 |
10 | location ^~ /themepark/ {
11 | # enable the next two lines for http auth
12 | #auth_basic "Restricted";
13 | #auth_basic_user_file /config/nginx/.htpasswd;
14 |
15 | # enable for ldap auth (requires ldap-server.conf in the server block)
16 | #include /config/nginx/ldap-location.conf;
17 |
18 | # enable for Authelia (requires authelia-server.conf in the server block)
19 | #include /config/nginx/authelia-location.conf;
20 |
21 | # enable for Authentik (requires authentik-server.conf in the server block)
22 | #include /config/nginx/authentik-location.conf;
23 |
24 | # If you don't want to cache the CSS files you can uncomment the lines below.
25 | # add_header Last-Modified $date_gmt;
26 | # add_header Cache-Control 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
27 | # if_modified_since off;
28 | # expires -1;
29 | # etag off;
30 |
31 | include /config/nginx/proxy.conf;
32 | include /config/nginx/resolver.conf;
33 | sub_filter_types *;
34 | sub_filter 'url("/css/' 'url("/themepark/css/';
35 | sub_filter_once off;
36 | set $upstream_app theme-park;
37 | set $upstream_port 80;
38 | set $upstream_proto http;
39 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
40 | }
41 |
--------------------------------------------------------------------------------
/portainer.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/12
2 | # make sure that your portainer container is named portainer
3 | # portainer does not require a base url setting
4 |
5 | location /portainer {
6 | return 301 $scheme://$host/portainer/;
7 | }
8 |
9 | location ^~ /portainer/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app portainer;
26 | set $upstream_port 9000;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | rewrite /portainer(.*) $1 break;
31 | proxy_hide_header X-Frame-Options; # Possibly not needed after Portainer 1.20.0
32 | }
33 |
34 | location ^~ /portainer/api {
35 | include /config/nginx/proxy.conf;
36 | include /config/nginx/resolver.conf;
37 | set $upstream_app portainer;
38 | set $upstream_port 9000;
39 | set $upstream_proto http;
40 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
41 |
42 | rewrite /portainer(.*) $1 break;
43 | proxy_hide_header X-Frame-Options; # Possibly not needed after Portainer 1.20.0
44 | }
45 |
--------------------------------------------------------------------------------
/prowlarr.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/09/13
2 | # make sure that your prowlarr container is named prowlarr
3 | # make sure that prowlarr is set to work with the base url /prowlarr/
4 |
5 | location /prowlarr {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app prowlarr;
22 | set $upstream_port 9696;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | }
27 |
28 | location ~ /prowlarr(/[0-9]+)?/api {
29 | include /config/nginx/proxy.conf;
30 | include /config/nginx/resolver.conf;
31 | set $upstream_app prowlarr;
32 | set $upstream_port 9696;
33 | set $upstream_proto http;
34 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
35 |
36 | }
37 |
38 | location ~ /prowlarr(/[0-9]+)?/download {
39 | include /config/nginx/proxy.conf;
40 | include /config/nginx/resolver.conf;
41 | set $upstream_app prowlarr;
42 | set $upstream_port 9696;
43 | set $upstream_proto http;
44 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/semaphore.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/09/01
2 | # make sure that your grafana container is named grafana
3 | # make sure that grafana is set to work with the base url /grafana/
4 |
5 | location ^~ /semaphore/ {
6 | # enable the next two lines for http auth
7 | #auth_basic "Restricted";
8 | #auth_basic_user_file /config/nginx/.htpasswd;
9 |
10 | # enable for ldap auth (requires ldap-server.conf in the server block)
11 | #include /config/nginx/ldap-location.conf;
12 |
13 | # enable for Authelia (requires authelia-server.conf in the server block)
14 | #include /config/nginx/authelia-location.conf;
15 |
16 | # enable for Authentik (requires authentik-server.conf in the server block)
17 | #include /config/nginx/authentik-location.conf;
18 |
19 | include /config/nginx/proxy.conf;
20 | include /config/nginx/resolver.conf;
21 | set $upstream_app semaphore;
22 | set $upstream_port 3000;
23 | set $upstream_proto http;
24 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
25 |
26 | # Clear Authorization Header if you are using http auth and normal semaphore auth
27 | #proxy_set_header Authorization "";
28 |
29 | rewrite ^/semaphore/(.*)$ /$1 break;
30 |
31 | }
32 |
33 | location ^~ /semaphore/api {
34 | include /config/nginx/proxy.conf;
35 | include /config/nginx/resolver.conf;
36 | set $upstream_app semaphore;
37 | set $upstream_port 3000;
38 | set $upstream_proto http;
39 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
40 |
41 | # Clear Authorization Header if you are using http auth and normal semaphore auth
42 | #proxy_set_header Authorization "";
43 |
44 | rewrite ^/semaphore/(.*)$ /$1 break;
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/nextcloud.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your nextcloud container is named nextcloud
3 | # make sure that your dns has a cname set for nextcloud
4 | # assuming this container is called "swag", edit your nextcloud container's config
5 | # located at /config/www/nextcloud/config/config.php and add the following lines before the ");":
6 | # 'trusted_proxies' => [gethostbyname('swag')],
7 | # 'overwrite.cli.url' => 'https://nextcloud.example.com/',
8 | # 'overwritehost' => 'nextcloud.example.com',
9 | # 'overwriteprotocol' => 'https',
10 | #
11 | # Also don't forget to add your domain name to the trusted domains array. It should look somewhat like this:
12 | # array (
13 | # 0 => '192.168.0.1:444', # This line may look different on your setup, don't modify it.
14 | # 1 => 'nextcloud.example.com',
15 | # ),
16 |
17 | server {
18 | listen 443 ssl;
19 | # listen 443 quic;
20 | listen [::]:443 ssl;
21 | # listen [::]:443 quic;
22 |
23 | server_name nextcloud.*;
24 |
25 | include /config/nginx/ssl.conf;
26 |
27 | client_max_body_size 0;
28 |
29 | location / {
30 | include /config/nginx/proxy.conf;
31 | include /config/nginx/resolver.conf;
32 | set $upstream_app nextcloud;
33 | set $upstream_port 443;
34 | set $upstream_proto https;
35 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
36 |
37 | # Hide proxy response headers from Nextcloud that conflict with ssl.conf
38 | # Uncomment the Optional additional headers in SWAG's ssl.conf to pass Nextcloud's security scan
39 | proxy_hide_header Referrer-Policy;
40 | proxy_hide_header X-Content-Type-Options;
41 | proxy_hide_header X-Frame-Options;
42 | proxy_hide_header X-XSS-Protection;
43 |
44 | # Disable proxy buffering
45 | proxy_buffering off;
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/organizr-auth.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your organizr container is named organizr
3 | # To use config this with subfolder proxies:
4 | # Rename this file to organizr-auth.subfolder.conf
5 | # Add one of the auth_request lines from the comments below
6 | # ex:
7 | # auth_request /auth-0;
8 | #
9 | # To use config this with subdomain proxies:
10 | # Rename this file to organizr-auth.subfolder.conf (the subfolder file name is still used)
11 | # Add the following line in your other subdomain proxy configs
12 | # include /config/nginx/proxy-confs/organizr-auth.subfolder.conf;
13 | # Add one of the auth_request lines from the comments below
14 | # ex:
15 | # include /config/nginx/proxy-confs/organizr-auth.subfolder.conf;
16 | # auth_request /auth-0;
17 |
18 | location ~ /auth-([0-9]+) {
19 | internal;
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_auth_app organizr;
23 | set $upstream_auth_port 80;
24 | set $upstream_auth_proto http;
25 | proxy_pass $upstream_auth_proto://$upstream_auth_app:$upstream_auth_port/api/v2/auth?group=$1;
26 |
27 | proxy_set_header Content-Length "";
28 |
29 | # Do not uncomment the lines below, these are examples for use in other proxy configs
30 | #auth_request /auth-0; #=Admin
31 | #auth_request /auth-1; #=Co-Admin
32 | #auth_request /auth-2; #=Super User
33 | #auth_request /auth-3; #=Power User
34 | #auth_request /auth-4; #=User
35 | #auth_request /auth-998; #=Logged In
36 | #auth_request /auth-999; #=Guest
37 | }
38 |
39 | # Optional redirect server authentication errors to organizr authentication page
40 | # NOTE: $host must be modified to your public URL when using subdomain proxies
41 | #error_page 401 $scheme://$host/?error=$status&return=$scheme://$http_host$request_uri;
42 |
--------------------------------------------------------------------------------
/grafana.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/04/20
2 | # make sure that your grafana container is named grafana
3 | # make sure that grafana is set to work with the base url /grafana/
4 | # grafana requires environment variables set thus:
5 | # environment:
6 | # - "GF_SERVER_ROOT_URL=https://my.domain.com/grafana"
7 | # - "GF_SERVER_DOMAIN=https://my.domain.com/"
8 |
9 | location ^~ /grafana/ {
10 | # enable the next two lines for http auth
11 | #auth_basic "Restricted";
12 | #auth_basic_user_file /config/nginx/.htpasswd;
13 |
14 | # enable for ldap auth (requires ldap-server.conf in the server block)
15 | #include /config/nginx/ldap-location.conf;
16 |
17 | # enable for Authelia (requires authelia-server.conf in the server block)
18 | #include /config/nginx/authelia-location.conf;
19 |
20 | # enable for Authentik (requires authentik-server.conf in the server block)
21 | #include /config/nginx/authentik-location.conf;
22 |
23 | include /config/nginx/proxy.conf;
24 | include /config/nginx/resolver.conf;
25 | set $upstream_app grafana;
26 | set $upstream_port 3000;
27 | set $upstream_proto http;
28 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
29 |
30 | # Clear Authorization Header if you are using http auth and normal Grafana auth
31 | #proxy_set_header Authorization "";
32 |
33 | rewrite ^/grafana/(.*)$ /$1 break;
34 |
35 | }
36 |
37 | location ^~ /grafana/api {
38 | include /config/nginx/proxy.conf;
39 | include /config/nginx/resolver.conf;
40 | set $upstream_app grafana;
41 | set $upstream_port 3000;
42 | set $upstream_proto http;
43 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
44 |
45 | # Clear Authorization Header if you are using http auth and normal Grafana auth
46 | #proxy_set_header Authorization "";
47 |
48 | rewrite ^/grafana/(.*)$ /$1 break;
49 |
50 | }
51 |
--------------------------------------------------------------------------------
/code-server.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your code-server container is named code-server
3 | # make sure that your dns has a cname set for code-server
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name code-server.* "~^[0-9]{1,10}\.code-server\..*$";
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | include /config/nginx/proxy.conf;
44 | include /config/nginx/resolver.conf;
45 | set $upstream_app code-server;
46 | set $upstream_port 8443;
47 | set $upstream_proto http;
48 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
49 |
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/tvheadend.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your tvheadend container is named tvheadend
3 | # make sure that tvheadend is set to work with the base url /tvheadend/
4 | # Before activating this config you need to do two things:
5 | # - enable a setting in the tvheadend web interface
6 | # - change your RUN_OPTS for tvheadend.
7 | #
8 | # You need to enable the setting "PROXY protocol & X-Forwarded For"
9 | # in the tvheadend web interface. This setting can be found in
10 | # "Configuration" -> "General" -> "Base" in the "HTTP Server Settings" Group.
11 | # You need to set the View level to Expert to see it. Once activated, you may need to
12 | # restart your tvheadend container. When testing this config, please be reminded
13 | # that the tvheadend docker can take a very long time to start (>10mins).
14 | #
15 | # For the subfolder to work you also need to edit your tvheadend docker compose / cli config
16 | # and set http_root in RUN_OPTS to tvheadend, e.g. in docker compose:
17 | # - RUN_OPTS= --http_root /tvheadend
18 |
19 | location /tvheadend {
20 | return 301 $scheme://$host/tvheadend/;
21 | }
22 |
23 | location /tvheadend/ {
24 | # enable the next two lines for http auth
25 | #auth_basic "Restricted";
26 | #auth_basic_user_file /config/nginx/.htpasswd;
27 |
28 | # enable for ldap auth (requires ldap-server.conf in the server block)
29 | #include /config/nginx/ldap-location.conf;
30 |
31 | # enable for Authelia (requires authelia-server.conf in the server block)
32 | #include /config/nginx/authelia-location.conf;
33 |
34 | # enable for Authentik (requires authentik-server.conf in the server block)
35 | #include /config/nginx/authentik-location.conf;
36 |
37 | include /config/nginx/proxy.conf;
38 | include /config/nginx/resolver.conf;
39 |
40 | set $upstream_app tvheadend;
41 | set $upstream_port 9981;
42 | set $upstream_proto http;
43 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
44 | }
45 |
--------------------------------------------------------------------------------
/mealie.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # Ensure your DNS has a CNAME set for mealie and that mealie container is named.
3 |
4 | server {
5 | listen 443 ssl;
6 | # listen 443 quic;
7 | listen [::]:443 ssl;
8 | # listen [::]:443 quic;
9 |
10 | server_name mealie.*;
11 |
12 | include /config/nginx/ssl.conf;
13 |
14 | client_max_body_size 0;
15 |
16 | # enable for ldap auth (requires ldap-location.conf in the location block)
17 | #include /config/nginx/ldap-server.conf;
18 |
19 | # enable for Authelia (requires authelia-location.conf in the location block)
20 | #include /config/nginx/authelia-server.conf;
21 |
22 | # enable for Authentik (requires authentik-location.conf in the location block)
23 | #include /config/nginx/authentik-server.conf;
24 |
25 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
26 | #include /config/nginx/tinyauth-server.conf;
27 |
28 | location / {
29 | # enable the next two lines for http auth
30 | #auth_basic "Restricted";
31 | #auth_basic_user_file /config/nginx/.htpasswd;
32 |
33 | # enable for ldap auth (requires ldap-server.conf in the server block)
34 | #include /config/nginx/ldap-location.conf;
35 |
36 | # enable for Authelia (requires authelia-server.conf in the server block)
37 | #include /config/nginx/authelia-location.conf;
38 |
39 | # enable for Authentik (requires authentik-server.conf in the server block)
40 | #include /config/nginx/authentik-location.conf;
41 |
42 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
43 | #include /config/nginx/tinyauth-location.conf;
44 |
45 | include /config/nginx/proxy.conf;
46 | include /config/nginx/resolver.conf;
47 | set $upstream_app mealie;
48 | set $upstream_port 9000;
49 | set $upstream_proto http;
50 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
51 |
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/transmission.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your transmission container is named transmission
3 | # transmission does not require a base url setting
4 | #
5 | # Some Transmission Chrome extensions cannot handle HTTP/2 proxies as they
6 | # rely on the HTTP Status Text to determine if they should add the
7 | # X-Transmission-Session-Id header or not. HTTP/2 does not return this text
8 | # so jQuery responses are empty. This causes RPCs to fail.
9 | #
10 | # If your extension is affected, you can remove http2 from the default server
11 | # in /config/nginx/site-confs/default or listen on a different port that has
12 | # no http2 servers defined. Better yet, submit a bug report with the
13 | # extension developer to fix their extensions to support HTTP/2.
14 |
15 | location ^~ /transmission {
16 | # enable the next two lines for http auth
17 | #auth_basic "Restricted";
18 | #auth_basic_user_file /config/nginx/.htpasswd;
19 |
20 | # enable for ldap auth (requires ldap-server.conf in the server block)
21 | #include /config/nginx/ldap-location.conf;
22 |
23 | # enable for Authelia (requires authelia-server.conf in the server block)
24 | #include /config/nginx/authelia-location.conf;
25 |
26 | # enable for Authentik (requires authentik-server.conf in the server block)
27 | #include /config/nginx/authentik-location.conf;
28 |
29 | include /config/nginx/proxy.conf;
30 | include /config/nginx/resolver.conf;
31 | set $upstream_app transmission;
32 | set $upstream_port 9091;
33 | set $upstream_proto http;
34 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
35 |
36 | proxy_pass_header X-Transmission-Session-Id;
37 | }
38 |
39 | location ^~ /transmission/rpc {
40 | include /config/nginx/proxy.conf;
41 | include /config/nginx/resolver.conf;
42 | set $upstream_app transmission;
43 | set $upstream_port 9091;
44 | set $upstream_proto http;
45 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
46 |
47 | }
48 |
--------------------------------------------------------------------------------
/synapse.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 |
3 | server {
4 | listen 443 ssl;
5 | # listen 443 quic;
6 | listen [::]:443 ssl;
7 | # listen [::]:443 quic;
8 |
9 | # For the federation port
10 | listen 8448 ssl;
11 | listen [::]:8448 ssl;
12 |
13 | server_name matrix.*;
14 |
15 | include /config/nginx/ssl.conf;
16 |
17 | client_max_body_size 0;
18 |
19 | # enable for ldap auth (requires ldap-location.conf in the location block)
20 | #include /config/nginx/ldap-server.conf;
21 |
22 | # enable for Authelia (requires authelia-location.conf in the location block)
23 | #include /config/nginx/authelia-server.conf;
24 |
25 | # enable for Authentik (requires authentik-location.conf in the location block)
26 | #include /config/nginx/authentik-server.conf;
27 |
28 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
29 | #include /config/nginx/tinyauth-server.conf;
30 |
31 | location / {
32 | # enable the next two lines for http auth
33 | #auth_basic "Restricted";
34 | #auth_basic_user_file /config/nginx/.htpasswd;
35 |
36 | # enable for ldap auth (requires ldap-server.conf in the server block)
37 | #include /config/nginx/ldap-location.conf;
38 |
39 | # enable for Authelia (requires authelia-server.conf in the server block)
40 | #include /config/nginx/authelia-location.conf;
41 |
42 | # enable for Authentik (requires authentik-server.conf in the server block)
43 | #include /config/nginx/authentik-location.conf;
44 |
45 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
46 | #include /config/nginx/tinyauth-location.conf;
47 |
48 | include /config/nginx/proxy.conf;
49 | include /config/nginx/resolver.conf;
50 | set $upstream_app synapse;
51 | set $upstream_port 8008;
52 | set $upstream_proto http;
53 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
54 | }
55 | }
56 |
--------------------------------------------------------------------------------
/qui.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/08/28
2 | # make sure that your qui container is named qui
3 | # make sure that your dns has a cname set for qui
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name qui.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app qui;
49 | set $upstream_port 7476;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/znc.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your znc container is named znc
3 | # make sure that your dns has a cname set for znc
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name znc.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app znc;
49 | set $upstream_port 6501;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/atuin.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your atuin container is named atuin
3 | # make sure that your dns has a cname set for atuin
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name atuin.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app atuin;
49 | set $upstream_port 8888;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/dashy.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your dashy container is named dashy
3 | # make sure that your dns has a cname set for dashy
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name dashy.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app dashy;
49 | set $upstream_port 8080;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/drone.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your drone container is named drone
3 | # make sure that your dns has a cname set for drone
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name drone.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app drone;
49 | set $upstream_port 80;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/homer.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your homer container is named homer
3 | # make sure that your dns has a cname set for homer
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name homer.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app homer;
49 | set $upstream_port 8080;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/petio.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your petio container is named petio
3 | # make sure that your dns has a cname set for petio
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name petio.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app petio;
49 | set $upstream_port 7777;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/photoprism.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # Ensure your DNS has a CNAME set for Photoprism and that Photoprism container is named.
3 |
4 | server {
5 | listen 443 ssl;
6 | # listen 443 quic;
7 | listen [::]:443 ssl;
8 | # listen [::]:443 quic;
9 |
10 | server_name photoprism.*;
11 |
12 | include /config/nginx/ssl.conf;
13 |
14 | client_max_body_size 0;
15 |
16 | # enable for ldap auth (requires ldap-location.conf in the location block)
17 | #include /config/nginx/ldap-server.conf;
18 |
19 | # enable for Authelia (requires authelia-location.conf in the location block)
20 | #include /config/nginx/authelia-server.conf;
21 |
22 | # enable for Authentik (requires authentik-location.conf in the location block)
23 | #include /config/nginx/authentik-server.conf;
24 |
25 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
26 | #include /config/nginx/tinyauth-server.conf;
27 |
28 | location / {
29 | # enable the next two lines for http auth
30 | #auth_basic "Restricted";
31 | #auth_basic_user_file /config/nginx/.htpasswd;
32 |
33 | # enable for ldap auth (requires ldap-server.conf in the server block)
34 | #include /config/nginx/ldap-location.conf;
35 |
36 | # enable for Authelia (requires authelia-server.conf in the server block)
37 | #include /config/nginx/authelia-location.conf;
38 |
39 | # enable for Authentik (requires authentik-server.conf in the server block)
40 | #include /config/nginx/authentik-location.conf;
41 |
42 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
43 | #include /config/nginx/tinyauth-location.conf;
44 |
45 | include /config/nginx/proxy.conf;
46 | include /config/nginx/resolver.conf;
47 | set $upstream_app photoprism;
48 | set $upstream_port 2342;
49 | set $upstream_proto http;
50 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
51 |
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/romm.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your romM container is named romm
3 | # make sure that your dns has a cname set for romm
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name romm.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app romm;
49 | set $upstream_port 8080;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/dsmrreader.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your dsmr container is named dsmr
3 | # make sure that your dns has a cname set for dsmr
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name dsmr.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app dsmr;
49 | set $upstream_port 80;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/grav.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your grav container is named grav
3 | # make sure that your dns has a cname set for grav
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name grav.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app grav;
49 | set $upstream_port 80;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 |
55 | }
56 |
--------------------------------------------------------------------------------
/mailu.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your mailu container is named front
3 | # make sure that your dns has a cname set for mailu
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name mailu.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app front;
49 | set $upstream_port 80;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/ntfy.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your ntfy container is named ntfy
3 | # make sure that your dns has a cname set for ntfy
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name ntfy.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app ntfy;
49 | set $upstream_port 80;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 |
55 | }
56 |
--------------------------------------------------------------------------------
/pinry.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your pinry container is named pinry
3 | # make sure that your dns has a cname set for pinry
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name pinry.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app pinry;
49 | set $upstream_port 80;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/fenrus.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your fenrus container is named fenrus
3 | # make sure that your dns has a cname set for fenrus
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name fenrus.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app fenrus;
49 | set $upstream_port 3000;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/flood.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your flood container is named flood
3 | # make sure that your dns has a cname set for flood
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name flood.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app flood;
49 | set $upstream_port 3000;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/ghost.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your ghost container is named ghost
3 | # make sure that your dns has a cname set for ghost
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name ghost.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app ghost;
49 | set $upstream_port 2368;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/gotify.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your gotify container is named gotify
3 | # make sure that your dns has a cname set for gotify
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name gotify.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app gotify;
49 | set $upstream_port 80;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/homarr.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your homarr container is named homarr
3 | # make sure that your dns has a cname set for homarr
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name homarr.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app homarr;
49 | set $upstream_port 7575;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/kanzi.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your kanzi container is named kanzi
3 | # make sure that your dns has a cname set for kanzi
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name kanzi.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app kanzi;
49 | set $upstream_port 8000;
50 | set $upstream_proto https;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/kopia.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your kopia container is named kopia
3 | # make sure that your dns has a cname set for kopia
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name kopia.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app kopia;
49 | set $upstream_port 51515;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/lldap.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your lldap container is named lldap
3 | # make sure that your dns has a cname set for lldap
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name lldap.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app lldap;
49 | set $upstream_port 17170;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/lychee.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your lychee container is named lychee
3 | # make sure that your dns has a cname set for lychee
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name lychee.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app lychee;
49 | set $upstream_port 80;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/matomo.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your matomo container is named matomo
3 | # make sure that your dns has a cname set for matomo
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name matomo.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app matomo;
49 | set $upstream_port 80;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/mylar.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your mylar container is named mylar
3 | # make sure that your dns has a cname set for mylar
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name mylar.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app mylar;
49 | set $upstream_port 8090;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/nocodb.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your nocodb container is named nocodb
3 | # make sure that your dns has a cname set for nocodb
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name nocodb.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app nocodb;
49 | set $upstream_port 8080;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/nzbget.subfolder.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2023/02/05
2 | # make sure that your nzbget container is named nzbget
3 | # make sure that nzbget is set to work with the base url /nzbget/
4 | # nzbget does not require a base url setting
5 |
6 | location /nzbget {
7 | # enable the next two lines for http auth
8 | #auth_basic "Restricted";
9 | #auth_basic_user_file /config/nginx/.htpasswd;
10 |
11 | # enable for ldap auth (requires ldap-server.conf in the server block)
12 | #include /config/nginx/ldap-location.conf;
13 |
14 | # enable for Authelia (requires authelia-server.conf in the server block)
15 | #include /config/nginx/authelia-location.conf;
16 |
17 | # enable for Authentik (requires authentik-server.conf in the server block)
18 | #include /config/nginx/authentik-location.conf;
19 |
20 | include /config/nginx/proxy.conf;
21 | include /config/nginx/resolver.conf;
22 | set $upstream_app nzbget;
23 | set $upstream_port 6789;
24 | set $upstream_proto http;
25 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
26 |
27 | }
28 |
29 | location ~ /nzbget(/[^\/:]*:[^\/]*)?/jsonrpc {
30 | include /config/nginx/proxy.conf;
31 | include /config/nginx/resolver.conf;
32 | set $upstream_app nzbget;
33 | set $upstream_port 6789;
34 | set $upstream_proto http;
35 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
36 |
37 | }
38 |
39 | location ~ /nzbget(/[^\/:]*:[^\/]*)?/jsonprpc {
40 | include /config/nginx/proxy.conf;
41 | include /config/nginx/resolver.conf;
42 | set $upstream_app nzbget;
43 | set $upstream_port 6789;
44 | set $upstream_proto http;
45 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
46 |
47 | }
48 |
49 | location ~ /nzbget(/[^\/:]*:[^\/]*)?/xmlrpc {
50 | include /config/nginx/proxy.conf;
51 | include /config/nginx/resolver.conf;
52 | set $upstream_app nzbget;
53 | set $upstream_port 6789;
54 | set $upstream_proto http;
55 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
56 |
57 | }
58 |
--------------------------------------------------------------------------------
/piwigo.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your piwigo container is named piwigo
3 | # make sure that your dns has a cname set for piwigo
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name piwigo.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app piwigo;
49 | set $upstream_port 80;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/pydio.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your pydio container is named pydio
3 | # make sure that your dns has a cname set for pydio
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name pydio.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app pydio;
49 | set $upstream_port 443;
50 | set $upstream_proto https;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/shlink.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your shlink container is named shlink
3 | # make sure that your dns has a cname set for shlink
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name shlink.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app shlink;
49 | set $upstream_port 8080;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/tdarr.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your tdarr container is named tdarr
3 | # make sure that your dns has a cname set for tdarr
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name tdarr.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app tdarr;
49 | set $upstream_port 8265;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/wizarr.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your wizarr container is named wizarr
3 | # make sure that your dns has a cname set for wizarr
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name wizarr.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app wizarr;
49 | set $upstream_port 5690;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/yacht.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your yacht container is named yacht
3 | # make sure that your dns has a cname set for yacht
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name yacht.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app yacht;
49 | set $upstream_port 8000;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/budge.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your budge container is named budge
3 | # make sure that your dns has a cname set for budge
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name budge.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app budge;
49 | set $upstream_port 443;
50 | set $upstream_proto https;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 |
55 | }
56 |
--------------------------------------------------------------------------------
/deluge.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your deluge container is named deluge
3 | # make sure that your dns has a cname set for deluge
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name deluge.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app deluge;
49 | set $upstream_port 8112;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/dockge.subdomain.conf.sample:
--------------------------------------------------------------------------------
1 | ## Version 2025/07/18
2 | # make sure that your dockge container is named dockge
3 | # make sure that your dns has a cname set for dockge
4 |
5 | server {
6 | listen 443 ssl;
7 | # listen 443 quic;
8 | listen [::]:443 ssl;
9 | # listen [::]:443 quic;
10 |
11 | server_name dockge.*;
12 |
13 | include /config/nginx/ssl.conf;
14 |
15 | client_max_body_size 0;
16 |
17 | # enable for ldap auth (requires ldap-location.conf in the location block)
18 | #include /config/nginx/ldap-server.conf;
19 |
20 | # enable for Authelia (requires authelia-location.conf in the location block)
21 | #include /config/nginx/authelia-server.conf;
22 |
23 | # enable for Authentik (requires authentik-location.conf in the location block)
24 | #include /config/nginx/authentik-server.conf;
25 |
26 | # enable for Tinyauth (requires tinyauth-location.conf in the location block)
27 | #include /config/nginx/tinyauth-server.conf;
28 |
29 | location / {
30 | # enable the next two lines for http auth
31 | #auth_basic "Restricted";
32 | #auth_basic_user_file /config/nginx/.htpasswd;
33 |
34 | # enable for ldap auth (requires ldap-server.conf in the server block)
35 | #include /config/nginx/ldap-location.conf;
36 |
37 | # enable for Authelia (requires authelia-server.conf in the server block)
38 | #include /config/nginx/authelia-location.conf;
39 |
40 | # enable for Authentik (requires authentik-server.conf in the server block)
41 | #include /config/nginx/authentik-location.conf;
42 |
43 | # enable for Tinyauth (requires tinyauth-server.conf in the server block)
44 | #include /config/nginx/tinyauth-location.conf;
45 |
46 | include /config/nginx/proxy.conf;
47 | include /config/nginx/resolver.conf;
48 | set $upstream_app dockge;
49 | set $upstream_port 5001;
50 | set $upstream_proto http;
51 | proxy_pass $upstream_proto://$upstream_app:$upstream_port;
52 |
53 | }
54 | }
55 |
--------------------------------------------------------------------------------