diff --git a/.env.example b/.env.example index fc88e67..d3c2c8b 100644 --- a/.env.example +++ b/.env.example @@ -4,6 +4,7 @@ COMPOSE_FILE=docker-compose.yml:adguardhome/docker-compose.yml:tandoor/docker-co USER_ID=1000 GROUP_ID=1000 TIMEZONE="America/New_York" +CONFIG_ROOT="." DATA_ROOT="/mnt/data" DOWNLOAD_ROOT="/mnt/data/torrents" PIA_LOCATION=ca diff --git a/README.md b/README.md index 1076b2a..c784915 100644 --- a/README.md +++ b/README.md @@ -100,6 +100,7 @@ If you want to show Jellyfin information in the homepage, create it in Jellyfin | `USER_ID` | ID of the user to use in Docker containers | `1000` | | `GROUP_ID` | ID of the user group to use in Docker containers | `1000` | | `TIMEZONE` | TimeZone used by the container. | `America/New_York` | +| `CONFIG_ROOT` | Host location for configuration files | `.` | | `DATA_ROOT` | Host location of the data files | `/mnt/data` | | `DOWNLOAD_ROOT` | Host download location for qBittorrent, should be a subfolder of `DATA_ROOT` | `/mnt/data/torrents` | | `PIA_LOCATION` | Servers to use for PIA. [see list here](https://serverlist.piaservers.net/vpninfo/servers/v6) | `ca` (Montreal, Canada) | diff --git a/docker-compose.yml b/docker-compose.yml index 001eae0..a9e34c8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -31,7 +31,7 @@ services: - "80:80" - "443:443" volumes: - - ./letsencrypt:/letsencrypt + - ${CONFIG_ROOT:.}/letsencrypt:/letsencrypt - "/var/run/docker.sock:/var/run/docker.sock:ro" extra_hosts: - host.docker.internal:172.17.0.1 @@ -47,7 +47,7 @@ services: - PGID=${GROUP_ID} - TZ=${TIMEZONE} volumes: - - ./sonarr:/config + - ${CONFIG_ROOT:.}/sonarr:/config - ${DATA_ROOT}:/data restart: always healthcheck: @@ -77,7 +77,7 @@ services: - PGID=${GROUP_ID} - TZ=${TIMEZONE} volumes: - - ./radarr:/config + - ${CONFIG_ROOT:.}/radarr:/config - ${DATA_ROOT}:/data restart: always healthcheck: @@ -107,7 +107,7 @@ services: - PGID=${GROUP_ID} - TZ=${TIMEZONE} volumes: - - ./lidarr:/config + - ${CONFIG_ROOT:.}/lidarr:/config - ${DATA_ROOT}:/data restart: always healthcheck: @@ -139,7 +139,7 @@ services: - PGID=${GROUP_ID} - TZ=${TIMEZONE} volumes: - - ./bazarr/config:/config + - ${CONFIG_ROOT:.}/bazarr/config:/config - ${DATA_ROOT}:/data restart: always healthcheck: @@ -168,7 +168,7 @@ services: - LOG_LEVEL=debug - TZ=${TIMEZONE} volumes: - - ./jellyseerr:/app/config + - ${CONFIG_ROOT:.}/jellyseerr:/app/config restart: always healthcheck: test: ["CMD", "wget", "http://127.0.0.1:5055/api/v1/status", "-qO", "/dev/null"] @@ -238,7 +238,7 @@ services: - PGID=${GROUP_ID} - TZ=${TIMEZONE} volumes: - - ./prowlarr:/config + - ${CONFIG_ROOT:.}/prowlarr:/config restart: always healthcheck: test: [ "CMD", "curl", "--fail", "http://127.0.0.1:9696/prowlarr/ping" ] @@ -285,7 +285,7 @@ services: - WEBUI_PORT=8080 - DOCKER_MODS=ghcr.io/gabe565/linuxserver-mod-vuetorrent volumes: - - ./qbittorrent:/config + - ${CONFIG_ROOT:.}/qbittorrent:/config - ${DOWNLOAD_ROOT}:/data/torrents restart: always healthcheck: @@ -326,8 +326,8 @@ services: image: thrnz/docker-wireguard-pia container_name: vpn volumes: - - ./pia:/pia - - ./pia-shared:/pia-shared + - ${CONFIG_ROOT:.}/pia:/pia + - ${CONFIG_ROOT:.}/pia-shared:/pia-shared cap_add: - NET_ADMIN - SYS_MODULE @@ -376,7 +376,7 @@ services: - PGID=${GROUP_ID} - TZ=${TIMEZONE} volumes: - - ./sabnzbd:/config + - ${CONFIG_ROOT:.}/sabnzbd:/config - ${DATA_ROOT}:/data restart: always labels: @@ -405,7 +405,7 @@ services: - TZ=${TIMEZONE} - JELLYFIN_PublishedServerUrl=${HOSTNAME}/jellyfin volumes: - - ./jellyfin:/config + - ${CONFIG_ROOT:.}/jellyfin:/config - ${DATA_ROOT}:/data ports: - "7359:7359/udp" @@ -442,7 +442,7 @@ services: - PGID=${GROUP_ID} - TZ=${TIMEZONE} volumes: - - ./homeassistant:/config + - ${CONFIG_ROOT:.}/homeassistant:/config - /etc/localtime:/etc/localtime:ro - /run/dbus:/run/dbus:ro restart: always @@ -481,7 +481,7 @@ services: - HOMEPAGE_VAR_WEATHER_TIME=${TIMEZONE} - HOMEPAGE_VAR_WEATHER_UNIT=${HOMEPAGE_VAR_WEATHER_UNIT} volumes: - - ./homepage:/app/config + - ${CONFIG_ROOT:.}/homepage:/app/config - /var/run/docker.sock:/var/run/docker.sock:ro - ${DATA_ROOT}:/data restart: always