Skip to content

Commit

Permalink
parameterize all base paths
Browse files Browse the repository at this point in the history
  • Loading branch information
SaswatPadhi committed Nov 11, 2024
1 parent c58f0f1 commit 27e46e5
Show file tree
Hide file tree
Showing 23 changed files with 35 additions and 31 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -1112,7 +1112,7 @@ All specializations should be added to `*.override.*` files.
- see [`.github/workflows/config/options.conf`](.github/workflows/config/options.conf) for an example
- `static.override.env` may store additional service-specific constants
- similar idea as its global counterpart `static.global.env`
- see [`.archive/nocodb/static.env`](.archive/nocodb/static.env) for an example
- see [`gitea/static.env`](gitea/static.env) for an example
- `dynamic.override.env.sh` may generate additional service-specific evironment variables
- similar idea as its global counterpart `dynamic.global.env.sh`
- see [`pihole/dynamic.env.sh`](pihole/dynamic.env.sh) for an example
Expand Down
4 changes: 2 additions & 2 deletions airdcpp/docker-compose.labels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ services:
airdcpp:
labels:
traefik.enable: true
traefik.http.middlewares.strip-airdcpp-prefix.stripPrefix.prefixes: "/airdcpp"
traefik.http.routers.airdcpp.rule: PathPrefix(`/airdcpp`)
traefik.http.middlewares.strip-airdcpp-prefix.stripPrefix.prefixes: "/${AIRDCPP_BASE_PATH:?}"
traefik.http.routers.airdcpp.rule: PathPrefix(`/${AIRDCPP_BASE_PATH:?}`)
traefik.http.services.airdcpp.loadBalancer.server.port: 5600
traefik.http.routers.airdcpp.entryPoints: wan-https
traefik.http.routers.airdcpp.middlewares: strip-airdcpp-prefix
1 change: 1 addition & 0 deletions airdcpp/static.env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
AIRDCPP_BASE_PATH=airdcpp
3 changes: 0 additions & 3 deletions gitea/dynamic.env.sh

This file was deleted.

1 change: 1 addition & 0 deletions gitea/static.env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
GITEA_BASE_PATH=gitea
3 changes: 0 additions & 3 deletions indexarr/dynamic.env.sh

This file was deleted.

1 change: 1 addition & 0 deletions indexarr/static.env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
JACKETT_BASE_PATH=jackett
5 changes: 0 additions & 5 deletions monitarr/dynamic.env.sh

This file was deleted.

3 changes: 3 additions & 0 deletions monitarr/static.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
LIDARR_BASE_PATH=lidarr
RADARR_BASE_PATH=radarr
SONARR_BASE_PATH=sonarr
2 changes: 1 addition & 1 deletion navidrome/docker-compose.labels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@ services:
navidrome:
labels:
traefik.enable: true
traefik.http.routers.navidrome.rule: PathPrefix(`/navidrome`)
traefik.http.routers.navidrome.rule: PathPrefix(`/${NAVIDROME_BASE_PATH:?}`)
traefik.http.routers.navidrome.entryPoints: wan-https
2 changes: 1 addition & 1 deletion navidrome/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ services:
- ./data/navidrome/data:/data:rw

environment:
ND_BASEURL: /navidrome
ND_BASEURL: "/${NAVIDROME_BASE_PATH:?}"
ND_LOGLEVEL: info
ND_SCANSCHEDULE: 30m
ND_SESSIONTIMEOUT: 8h
Expand Down
1 change: 1 addition & 0 deletions navidrome/static.env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
NAVIDROME_BASE_PATH=navidrome
8 changes: 4 additions & 4 deletions nextcloud/docker-compose.labels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@ services:
nextcloud:
labels:
traefik.enable: true
traefik.http.middlewares.strip-nextcloud-prefix.stripPrefix.prefixes: "/nextcloud"
traefik.http.middlewares.strip-nextcloud-prefix.stripPrefix.prefixes: "/${NEXTCLOUD_BASE_PATH:?}"
traefik.http.middlewares.nextcloud-caldav-redirect.redirectRegex.permanent: true
traefik.http.middlewares.nextcloud-caldav-redirect.redirectRegex.regex: "^https://(.+)/nextcloud/.well-known/(card|cal)dav"
traefik.http.middlewares.nextcloud-caldav-redirect.redirectRegex.replacement: "https://$${1}/nextcloud/remote.php/dav/"
traefik.http.routers.nextcloud.rule: PathPrefix(`/nextcloud`)
traefik.http.middlewares.nextcloud-caldav-redirect.redirectRegex.regex: "^https://(.+)/${NEXTCLOUD_BASE_PATH:?}/.well-known/(card|cal)dav"
traefik.http.middlewares.nextcloud-caldav-redirect.redirectRegex.replacement: "https://$${1}/${NEXTCLOUD_BASE_PATH:?}/remote.php/dav/"
traefik.http.routers.nextcloud.rule: PathPrefix(`/${NEXTCLOUD_BASE_PATH:?}`)
traefik.http.routers.nextcloud.entryPoints: wan-https
# NOTE: Order of middlewares matters: redirect must be performed before stripping
traefik.http.routers.nextcloud.middlewares: nextcloud-caldav-redirect@docker,strip-nextcloud-prefix
1 change: 1 addition & 0 deletions nextcloud/static.env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
NEXTCLOUD_BASE_PATH=nextcloud
9 changes: 6 additions & 3 deletions pihole/docker-compose.labels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,12 @@ services:
pihole:
labels:
traefik.enable: true
traefik.http.middlewares.strip-pihole-prefix.stripPrefix.prefixes: "/pihole"
traefik.http.middlewares.strip-pihole-prefix.stripPrefix.prefixes: "/${PIHOLE_BASE_PATH:?}"
traefik.http.middlewares.add-admin-prefix.addPrefix.prefix: "/admin"
traefik.http.routers.pihole.rule: PathPrefix(`/pihole`)
traefik.http.middlewares.pihole-postlogin-redirect.redirectRegex.permanent: true
traefik.http.middlewares.pihole-postlogin-redirect.redirectRegex.regex: "^https://(.+)/admin/$"
traefik.http.middlewares.pihole-postlogin-redirect.redirectRegex.replacement: "https://$${1}/${PIHOLE_BASE_PATH:?}/"
traefik.http.routers.pihole.rule: PathPrefix(`/${PIHOLE_BASE_PATH:?}`)
traefik.http.services.pihole.loadBalancer.server.port: 80
traefik.http.routers.pihole.entryPoints: lan-https
traefik.http.routers.pihole.middlewares: strip-pihole-prefix, add-admin-prefix
traefik.http.routers.pihole.middlewares: pihole-postlogin-redirect@docker, strip-pihole-prefix, add-admin-prefix
1 change: 1 addition & 0 deletions pihole/static.env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
PIHOLE_BASE_PATH=pihole
4 changes: 2 additions & 2 deletions qbittorrent/docker-compose.labels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ services:
qbittorrent:
labels:
traefik.enable: true
traefik.http.middlewares.strip-qbittorrent-prefix.stripPrefix.prefixes: "/qbittorrent"
traefik.http.routers.qbittorrent.rule: PathPrefix(`/qbittorrent`)
traefik.http.middlewares.strip-qbittorrent-prefix.stripPrefix.prefixes: "/${QBITTORRENT_BASE_PATH:?}"
traefik.http.routers.qbittorrent.rule: PathPrefix(`/${QBITTORRENT_BASE_PATH:?}`)
traefik.http.services.qbittorrent.loadBalancer.server.port: 8080
traefik.http.routers.qbittorrent.entryPoints: wan-https
traefik.http.routers.qbittorrent.middlewares: strip-qbittorrent-prefix
1 change: 1 addition & 0 deletions qbittorrent/static.env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
QBITTORRENT_BASE_PATH=qbittorrent
4 changes: 2 additions & 2 deletions tang/docker-compose.labels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ services:
tang:
labels:
traefik.enable: true
traefik.http.middlewares.strip-tang-prefix.stripPrefix.prefixes: "/tang"
traefik.http.routers.tang.rule: PathPrefix(`/tang`)
traefik.http.middlewares.strip-tang-prefix.stripPrefix.prefixes: "/${TANG_BASE_PATH:?}"
traefik.http.routers.tang.rule: PathPrefix(`/${TANG_BASE_PATH:?}`)
traefik.http.routers.tang.entryPoints: lan-http
traefik.http.routers.tang.middlewares: strip-tang-prefix
1 change: 1 addition & 0 deletions tang/static.env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
TANG_BASE_PATH=gitea
6 changes: 3 additions & 3 deletions teslamate/docker-compose.labels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@ services:
teslamate:
labels:
traefik.enable: true
traefik.http.middlewares.strip-teslamate-prefix.stripPrefix.prefixes: "/teslamate"
traefik.http.middlewares.strip-teslamate-prefix.stripPrefix.prefixes: "/${TESLAMATE_BASE_PATH:?}"
traefik.http.middlewares.only-https-forwarded-proto.headers.customRequestHeaders.X-Forwarded-Proto: https
traefik.http.middlewares.only-wss-forwarded-proto.headers.customRequestHeaders.X-Forwarded-Proto: wss
traefik.http.routers.teslamate.rule: PathPrefix(`/teslamate`)
traefik.http.routers.teslamate.rule: PathPrefix(`/${TESLAMATE_BASE_PATH:?}`)
traefik.http.routers.teslamate.entryPoints: lan-https
traefik.http.routers.teslamate.middlewares: strip-teslamate-prefix, only-https-forwarded-proto
traefik.http.routers.teslamate-websocket.rule: PathPrefix(`/teslamate/live/websocket`)
traefik.http.routers.teslamate-websocket.rule: PathPrefix(`/${TESLAMATE_BASE_PATH:?}/live/websocket`)
traefik.http.routers.teslamate-websocket.entryPoints: lan-https
traefik.http.routers.teslamate-websocket.middlewares: strip-teslamate-prefix, only-wss-forwarded-proto
2 changes: 1 addition & 1 deletion teslamate/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ services:
DATABASE_NAME: teslamate
DATABASE_HOST: db
MQTT_HOST: mqtt
URL_PATH: '/teslamate'
URL_PATH: '/${TESLAMATE_BASE_PATH:?}'
TZ: ${TZ:?}

healthcheck:
Expand Down
1 change: 1 addition & 0 deletions teslamate/static.env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
TESLAMATE_BASE_PATH=teslamate

0 comments on commit 27e46e5

Please sign in to comment.