Compare commits

20 Commits

Author SHA1 Message Date
700eb145bf Updated Arr stack volume paths to support hardlinks. Added MBID-Poller. Updated README.md 2025-09-28 10:15:24 +00:00
265d50897b Added Whisper to he stack and updated path naming 2025-09-26 01:44:00 +00:00
af8fb1a502 Added Bytestash to the docker stack and added Proxmox services to the README.md 2025-09-25 07:28:04 +00:00
4a8ea0a8b6 Updated README.md 2025-09-24 10:01:20 +00:00
0646176d74 Added slskd and Soularr. Soularr has some issues with connection due to config. 2025-09-24 08:28:16 +00:00
af456f7260 Added Maloja to Lidarr Importer to stack 2025-09-21 22:50:54 +00:00
87ec56ee56 Added Maloja to Lidarr Importer to stack 2025-09-21 22:50:43 +00:00
254ef750c7 Added Pinchflat to the stack for downloading Youtube content 2025-09-20 11:59:52 +00:00
5e7d2e7486 Updated Multi-Scrobbler with YTMusic cookie 2025-09-20 03:52:45 +00:00
b3a007f8b9 Removed Redbot folder from earlier testing being included in this git. Additionally added KitchenOwl service. 2025-08-30 22:58:01 +00:00
d189ab38a4 Removed redbot folder from testing being uploaded to git. Added KitchenOwl service 2025-08-30 22:36:20 +00:00
ecad8c9179 Added Discord bot 'Red bot' 2025-08-29 00:32:23 +00:00
2280ba017c Added iPerf3 to monitor local network connection speeds 2025-08-26 10:35:07 +00:00
382d08cbcb Updated the Foundry login watcher to serve the log on API root and thus removed the need for port 8080 2025-08-23 04:24:08 +00:00
981e8e29a8 Updated with recent docker-compose.yml changes 2025-08-21 09:23:43 +00:00
ee3815820f Added a new API trawler to capture player login dates into Foundry. 2025-08-21 08:55:29 +00:00
164a5e0eb3 Added Glances to the stack 2025-08-20 22:46:31 +00:00
a405e56fc5 Added LiteLLM to the stack 2025-08-18 09:58:29 +00:00
ed1944cfb9 Removed Development/ directory from repository 2025-08-18 09:43:42 +00:00
d220b04e32 Added LiteLLM to the stack 2025-08-18 09:40:50 +00:00
3 changed files with 304 additions and 52 deletions

1
.gitignore vendored
View File

@@ -10,6 +10,7 @@
# Service configuration and data directories # Service configuration and data directories
Services/ Services/
Development/
# Docker volumes and bind mounts from external paths # Docker volumes and bind mounts from external paths
docker-local/ docker-local/

View File

@@ -16,29 +16,35 @@ docker compose up -d
## 📋 Services Overview ## 📋 Services Overview
### 🎬 Media Management ### 🎬 Media Management
- **Bazarr** (6767) - Subtitle management - **Bazarr** (6767) - Subtitle Management
- **FlareSolverr** (8191) - Cloudflare bypass - **FlareSolverr** (8191) - Cloudflare Bypass
- **Jellyfin** (8096) - Media streaming server - **Jellyfin** (8096) - Media Streaming Server
- **Jellyseerr** (5055) - Media request management - **Jellyseerr** (5055) - Media Request Management
- **Lidarr** (8686) - Music management - **Prowlarr** (9696) - Indexer Management
- **Prowlarr** (9696) - Indexer management - **qBittorrent** (7070) - Download Client
- **qBittorrent** (7070) - Download client - **Radarr** (7878) - Movie Management
- **Radarr** (7878) - Movie management - **Sonarr** (8989) - TV Series Management
- **Sonarr** (8989) - TV series management
### 🎵 Music & Scrobbling ### 🎵 Music & Scrobbling
- **Maloja** (42010) - Music statistics - **Lidarr** (8686) - Music management
- **Multi-Scrobbler** (9078) - Music scrobbling - **Lidarr Importer API** (5110) - API of Maloja DB for Lidarr Import
- **Maloja** (42010) - Music Statistics
- **MBID-Poller** - Polls Lidar API with Scrobbled artists then auto adds once found.
- **Multi-Scrobbler** (9078) - Music Scrobbling
- **Maloja to Lidarr Importer** - Scrobble Artist List for Custom Import
- **Pinchflat** (8945) - Youtube Content Downloader
- **Soulseek** (5030) - P2P Filesharer
- **Soularr** - Intermediary between Lidarr and Soulseek
### 📄 Document Management ### 📄 Document Management
- **Gotenberg** - Document conversion - **Gotenberg** - Document Conversion
- **OnlyOffice** (8054) - Document editing - **OnlyOffice** (8054) - Document Editing
- **Paperless AI** (3040) - AI document enhancement - **Paperless AI** (3040) - AI Document Enhancement
- **Paperless NGX** (8100) - Document management - **Paperless NGX** (8100) - Document Management
- **Redis** - Paperless broker - **Redis** - Paperless Broker
- **MariaDB** - Paperless database - **MariaDB** - Paperless Database
- **Stirling PDF** (8090) - PDF processing - **Stirling PDF** (8090) - PDF Processing
- **Tika** - Content extraction - **Tika** - Content Extraction
### 🏠 Personal Applications ### 🏠 Personal Applications
- **AdventureLog Frontend** (8015) - Adventure tracking interface - **AdventureLog Frontend** (8015) - Adventure tracking interface
@@ -47,13 +53,21 @@ docker compose up -d
- **Gramps** (5511) - Genealogy management - **Gramps** (5511) - Genealogy management
- **Gramps Celery** - Background task processing - **Gramps Celery** - Background task processing
- **Gramps Redis** - Task queue - **Gramps Redis** - Task queue
- **KitchenOwl** - (8081) Recipe and Grocery Manager
- **LiteLLM** (4000) - LLM API Flattening
- **LiteLLM Postgres** - LLM database
- **Obsidian Remote** (8181) - Note-taking - **Obsidian Remote** (8181) - Note-taking
- **Redbot** - Discord Bot
- **Syncthing** (8384) - File synchronization - **Syncthing** (8384) - File synchronization
### 🛠️ System Utilities ### 🛠️ System Utilities
- **Bytestash** (5661) - Private Pastebin
- **Docker Proxy** (2375) - Docker API proxy - **Docker Proxy** (2375) - Docker API proxy
- **FileBrowser** (6633) - Web file manager - **FileBrowser** (6633) - Web file manager
- **FoundryVTT Watcher** (30000) - FoundryVTT player login watcher
- **Glances** - Resource manager
- **Homepage** (7575) - Service dashboard - **Homepage** (7575) - Service dashboard
- **iPerf3 Server** (5201) - LAN Network Speedtest server
- **RustDesk (hbbr)** - Remote desktop relay - **RustDesk (hbbr)** - Remote desktop relay
- **RustDesk (hbbs)** - Remote desktop signaling - **RustDesk (hbbs)** - Remote desktop signaling
- **Newt** - Notification service - **Newt** - Notification service
@@ -61,6 +75,20 @@ docker compose up -d
- **Speedtest Database** - MariaDB for speedtest - **Speedtest Database** - MariaDB for speedtest
- **Speedtest Tracker** (8180) - Network monitoring - **Speedtest Tracker** (8180) - Network monitoring
- **Watchtower** - Container updates - **Watchtower** - Container updates
- **Whisper** - Speech Recognition System
### 💻 Proxmox Host
The core of this environment is a Proxmox host that orchestrates multiple services using both VMs and LXCs for resource isolation and management. The services currently running include:
- **AdGuard** - Network-wide ad and tracker blocking service.
- **Vaultwarden** - Self-hosted Bitwarden server for secure password management.
- **Immich** - Self-hosted, open-source photo and video backup solution.
- **n8n** - Workflow automation tool for connecting apps and services.
- **HAOS (Home Assistant)** - VM dedicated to home automation.
- **Wordpress** - Content management system for website hosting.
- **FoundryVTT** - Self-hosted virtual tabletop for role-playing games.
- **Crafty Controller** - Server manager for Minecraft.
- **Nextcloud OS** - Platform for private file hosting and collaboration.
## 🏗️ Architecture ## 🏗️ Architecture
@@ -71,7 +99,7 @@ The stack is organized into logical service groups:
├── docker-compose.yml # Main orchestration for ephemeral services ├── docker-compose.yml # Main orchestration for ephemeral services
├── .env # Environment variables ├── .env # Environment variables
├── .env.template # Template for new deployments ├── .env.template # Template for new deployments
├── Services/ ├── services/
│ ├── filebrowser/ │ ├── filebrowser/
│ ├── homepage/ │ ├── homepage/
│ └── ... # Other stateless services │ └── ... # Other stateless services

View File

@@ -1,12 +1,12 @@
# Media Management (Arr Stack)
services: services:
# Media Management (Arr Stack)
bazarr: bazarr:
image: lscr.io/linuxserver/bazarr:latest image: lscr.io/linuxserver/bazarr:latest
container_name: bazarr container_name: bazarr
environment: environment:
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
- TZ=Pacific/Auckland - TZ=${TZ}
volumes: volumes:
- /docker-local/Arrs/Bazarr/config:/config - /docker-local/Arrs/Bazarr/config:/config
- /data/:/data/ - /data/:/data/
@@ -21,19 +21,18 @@ services:
image: ghcr.io/flaresolverr/flaresolverr:latest image: ghcr.io/flaresolverr/flaresolverr:latest
container_name: flaresolverr container_name: flaresolverr
environment: environment:
- TZ=Pacific/Auckland - TZ=${TZ}
ports: ports:
- 8191:8191 - 8191:8191
networks: networks:
arr_network: arr_network:
ipv4_address: 172.20.0.8 ipv4_address: 172.20.0.8
restart: unless-stopped restart: unless-stopped
jellyfin: jellyfin:
image: jellyfin/jellyfin image: jellyfin/jellyfin
container_name: jellyfin container_name: jellyfin
environment: environment:
- TZ=Pacific/Auckland - TZ=${TZ}
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
- JELLYFIN_PublishedServerUrl=${JELLYFIN_URL} - JELLYFIN_PublishedServerUrl=${JELLYFIN_URL}
@@ -41,7 +40,7 @@ services:
- /docker-local/Arrs/Jellyfin/config:/config - /docker-local/Arrs/Jellyfin/config:/config
- /docker-local/Arrs/Jellyfin/cache:/cache - /docker-local/Arrs/Jellyfin/cache:/cache
- /data:/data - /data:/data
- /dev/dri/renderD128:/dev/dri/renderD128 - /dev/dri/:/dev/dri/
ports: ports:
- 8096:8096 - 8096:8096
group_add: group_add:
@@ -53,7 +52,7 @@ services:
container_name: jellyseerr container_name: jellyseerr
environment: environment:
- LOG_LEVEL=debug - LOG_LEVEL=debug
- TZ=Pacific/Auckland - TZ=${TZ}
volumes: volumes:
- ../docker-local/Arrs/Jellyseerr/config:/app/config - ../docker-local/Arrs/Jellyseerr/config:/app/config
- /data/torrents:/downloads - /data/torrents:/downloads
@@ -65,16 +64,16 @@ services:
restart: unless-stopped restart: unless-stopped
lidarr: lidarr:
image: lscr.io/linuxserver/lidarr:latest image: ghcr.io/linuxserver-labs/prarr:lidarr-plugins
container_name: lidarr container_name: lidarr
environment: environment:
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
- TZ=Pacific/Auckland - TZ=${TZ}
volumes: volumes:
- /docker-local/Arrs/Lidarr/config:/config - /docker-local/Arrs/Lidarr/config:/config
- /data/:/data/ - /data/torrents/complete/lidarr:/data/downloads/complete/lidarr
- /data/torrents/:/downloads - /data/music:/data/music
ports: ports:
- 8686:8686 - 8686:8686
networks: networks:
@@ -86,7 +85,7 @@ services:
image: lscr.io/linuxserver/prowlarr:latest image: lscr.io/linuxserver/prowlarr:latest
container_name: prowlarr container_name: prowlarr
environment: environment:
- TZ=Pacific/Auckland - TZ=${TZ}
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
volumes: volumes:
@@ -104,11 +103,11 @@ services:
environment: environment:
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
- TZ=Pacific/Auckland - TZ=${TZ}
- WEBUI_PORT=8080 - WEBUI_PORT=8080
volumes: volumes:
- ./services/qBittorrent/config:/config - ./services/qBittorrent/config:/config
- /data/torrents:/downloads - /data/torrents:/data/downloads
ports: ports:
- 7070:8080 - 7070:8080
- 56881:6881 - 56881:6881
@@ -122,13 +121,13 @@ services:
image: lscr.io/linuxserver/radarr:latest image: lscr.io/linuxserver/radarr:latest
container_name: radarr container_name: radarr
environment: environment:
- TZ=Pacific/Auckland - TZ=${TZ}
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
volumes: volumes:
- /docker-local/Arrs/Radarr/config:/config - /docker-local/Arrs/Radarr/config:/config
- /data/:/data/ - /data/:/data/
- /data/torrents/:/downloads - /data/torrents/complete/radarr:/data/downloads/complete/radarr
ports: ports:
- 7878:7878 - 7878:7878
networks: networks:
@@ -140,13 +139,13 @@ services:
image: lscr.io/linuxserver/sonarr:latest image: lscr.io/linuxserver/sonarr:latest
container_name: sonarr container_name: sonarr
environment: environment:
- TZ=Pacific/Auckland - TZ=${TZ}
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
volumes: volumes:
- /docker-local/Arrs/Sonarr/config:/config - /docker-local/Arrs/Sonarr/config:/config
- /data:/data - /data:/data
- /data/torrents:/downloads - /data/torrents/complete/sonarr:/data/downloads/complete/sonarr
ports: ports:
- 8989:8989 - 8989:8989
networks: networks:
@@ -155,6 +154,21 @@ services:
restart: unless-stopped restart: unless-stopped
# Music & Scrobbling # Music & Scrobbling
beets:
image: lscr.io/linuxserver/beets:latest
container_name: beets
environment:
- PUID=1000
- PGID=1000
- TZ=${TZ}
volumes:
- /docker-local/beets/config:/config
- /data/music:/music
- /data/downloads:/downloads
ports:
- 8337:8337
restart: unless-stopped
maloja: maloja:
image: "krateng/maloja:latest" image: "krateng/maloja:latest"
container_name: maloja container_name: maloja
@@ -172,13 +186,22 @@ services:
image: foxxmd/multi-scrobbler image: foxxmd/multi-scrobbler
container_name: multi-scrobbler container_name: multi-scrobbler
environment: environment:
- TZ=Pacific/Auckland - TZ=${TZ}
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
- BASE_URL=${SCROBBLE_URL} - BASE_URL=${SCROBBLE_URL}
- SPOTIFY_CLIENT_ID=${SPOTIFY_CLIENT_ID} # - SPOTIFY_CLIENT_ID=${SPOTIFY_CLIENT_ID}
- SPOTIFY_CLIENT_SECRET=${SPOTIFY_CLIENT_SECRET} # - SPOTIFY_CLIENT_SECRET=${SPOTIFY_CLIENT_SECRET}
- SPOTIFY_REDIRECT_URI=${SPOTIFY_REDIRECT_URI} # - SPOTIFY_REDIRECT_URI=${SPOTIFY_REDIRECT_URI}
- YTM_COOKIE=${YTM_COOKIE}
# - YTM_REDIRECT_URI=${YTM_REDIRECT_URI}
# - YTM_CLIENT_ID=${YTM_CLIENT_ID}
# - YTM_CLIENT_SECRET=${YTM_CLIENT_SECRET}
- JELLYFIN_URL=${JELLYFIN_URL}
- JELLYFIN_APIKEY=${JELLYFIN_APIKEY}
- JELLYFIN_USER=${JELLYFIN_USER}
- LZ_TOKEN=${LZ_TOKEN}
- LZ_USER=${LZ_USER}
- MALOJA_URL=${MALOJA_URL} - MALOJA_URL=${MALOJA_URL}
- MALOJA_API_KEY=${MALOJA_API_KEY} - MALOJA_API_KEY=${MALOJA_API_KEY}
volumes: volumes:
@@ -187,6 +210,63 @@ services:
- "9078:9078" - "9078:9078"
restart: unless-stopped restart: unless-stopped
lidarr-importer-api:
image: gitea.kansaigaijin.com/kansaigaijin/majola-lidarr-importer:latest
container_name: maloja-lidarr-importer-api
volumes:
- ./services/maloja_lidarr_api/logs:/app/logs
ports:
- "5110:5000"
environment:
- SOURCE_API_URL=${SOURCE_API_URL}
- SOURCE_API_KEY=${SOURCE_API_KEY}
restart: "unless-stopped"
pinchflat:
image: ghcr.io/kieraneglin/pinchflat:latest
container_name: pinchflat
environment:
- TZ=${TZ}
ports:
- '8945:8945'
volumes:
- /docker-local/pinchflat/config:/config
- /data/torrents/:/downloads
slskd:
image: slskd/slskd
container_name: slskd
hostname: slskd
# user: 1000:1000
environment:
- TZ=${TZ}
- SLSKD_REMOTE_CONFIGURATION=true
- SLSKD_USERNAME=${SLSKD_USERNAME}
- SLSKD_PASSWORD=${SLSKD_PASSWORD}
ports:
- 5030:5030
- 5031:5031
- 50300:50300
volumes:
- /docker-local/slskd:/app
- /data:/data
- /data/torrents/slskd_downloads:/downloads
- /data/torrents/incomplete:/incomplete
restart: unless-stopped
soularr:
image: mrusse08/soularr:latest
container_name: soularr
hostname: soularr
user: 1000:1000
environment:
- TZ=${TZ}
- SCRIPT_INTERVAL=300
volumes:
- /data/torrents/slskd_downloads:/downloads
- ./services/soularr:/data
restart: unless-stopped
# Document Management # Document Management
broker: broker:
image: docker.io/library/redis:8 image: docker.io/library/redis:8
@@ -307,10 +387,10 @@ services:
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000 PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
PAPERLESS_TIKA_ENDPOINT: http://tika:9998 PAPERLESS_TIKA_ENDPOINT: http://tika:9998
volumes: volumes:
- ./Services/paperless/data:/usr/src/paperless/data - ./services/paperless/data:/usr/src/paperless/data
- ./Services/paperless/media:/usr/src/paperless/media - ./services/paperless/media:/usr/src/paperless/media
- ./Services/paperless/export:/usr/src/paperless/export - ./services/paperless/export:/usr/src/paperless/export
- ./Services/paperless/consume:/usr/src/paperless/consume - ./services/paperless/consume:/usr/src/paperless/consume
ports: ports:
- "8100:8000" - "8100:8000"
depends_on: depends_on:
@@ -409,13 +489,62 @@ services:
container_name: grampsweb_redis container_name: grampsweb_redis
restart: always restart: always
kitchenowl-front:
container_name: kitchenowl-frontend
image: tombursch/kitchenowl-web:latest
environment:
- BACK_URL=kitchenowl-backend:5000
ports:
- "8081:80"
depends_on:
- kitchenowl-back
restart: unless-stopped
kitchenowl-back:
container_name: kitchenowl-backend
image: tombursch/kitchenowl-backend:latest
environment:
- JWT_SECRET_KEY=${KO_JWT_SECRET_KEY}
- FRONT_URL=${KITCHENOWL_FRONT_URL}
volumes:
- /docker-local/kitchenowl_data:/data
restart: unless-stopped
litellm:
image: litellm:local # use your local amd64 build
container_name: litellm
restart: unless-stopped
ports:
- "4000:4000"
volumes:
- ./services/litellm/litellm-config.yaml:/app/config.yaml
- ./services/litellm/litellm-logs:/app/logs
environment:
- LITELLM_CONFIG=/app/config.yaml
- GROQ_API_KEY=${GROQ_API_KEY}
- DATABASE_URL=postgresql://litellm:litellm_pass@litellm-postgres:5432/litellm_db
- LITELLM_MASTER_KEY=${LITELLM_MASTER_KEY}
- LITELLM_SALT_KEY=${LITELLM_SALT_KEY}
- STORE_MODEL_IN_DB=True
litellm-postgres:
image: postgres:15
container_name: litellm-postgres
restart: unless-stopped
environment:
POSTGRES_USER: litellm
POSTGRES_PASSWORD: litellm_pass
POSTGRES_DB: litellm_db
volumes:
- /docker-local/litellm/postgres-data:/var/lib/postgresql/data
obsidian: obsidian:
image: 'ghcr.io/sytone/obsidian-remote:latest' image: 'ghcr.io/sytone/obsidian-remote:latest'
container_name: obsidian-remote container_name: obsidian-remote
environment: environment:
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
- TZ=Pacific/Auckland - TZ=${TZ}
- DOCKER_MODS=linuxserver/mods:universal-git - DOCKER_MODS=linuxserver/mods:universal-git
volumes: volumes:
- /docker-local/obsidian/vaults:/vaults - /docker-local/obsidian/vaults:/vaults
@@ -425,6 +554,18 @@ services:
- 8443:8443 - 8443:8443
restart: unless-stopped restart: unless-stopped
redbot:
container_name: redbot
image: phasecorex/red-discordbot
volumes:
- /docker-local/redbot:/data
environment:
- TOKEN=${REDBOT_TOKEN}
- PREFIX=!
- TZ=${TZ}
- PUID=1000
restart: unless-stopped
syncthing: syncthing:
image: syncthing/syncthing image: syncthing/syncthing
container_name: syncthing container_name: syncthing
@@ -443,6 +584,23 @@ services:
restart: unless-stopped restart: unless-stopped
# System Utilities # System Utilities
bytestash:
image: "ghcr.io/jordan-dalby/bytestash:latest"
container_name: bytestash
restart: always
volumes:
- /docker-local/bytestash/snippets:/data/snippets
ports:
- "5661:5000"
environment:
BASE_PATH: ""
JWT_SECRET: ${BYTE_JWT_SECRET}
TOKEN_EXPIRY: 24h
ALLOW_NEW_ACCOUNTS: "false"
DEBUG: "true"
DISABLE_ACCOUNTS: "false"
DISABLE_INTERNAL_ACCOUNTS: "false"
dockerproxy: dockerproxy:
image: ghcr.io/tecnativa/docker-socket-proxy:latest image: ghcr.io/tecnativa/docker-socket-proxy:latest
container_name: dockerproxy container_name: dockerproxy
@@ -474,6 +632,43 @@ services:
- 6633:8080 - 6633:8080
restart: unless-stopped restart: unless-stopped
foundry:
build: ./services/foundry-login
container_name: foundry-login
environment:
- SSH_HOST=${FOUNDRY_SSH_HOST}
- SSH_PORT=${FOUNDRY_SSH_PORT}
- SSH_USER=${FOUNDRY_SSH_USER}
- SSH_PASSWORD=${FOUNDRY_SSH_PASSWORD}
# - SSH_KEY_PATH=${FOUNDRY_SSH_KEY_PATH}
- FOUNDRY_LOG_PATH=${FOUNDRY_LOG_PATH}
- SLEEP_SECONDS=30
- FOUNDRY_URL=${FOUNDRY_URL}
- FOUNDRY_API_TOKEN=${FOUNDRY_API}
- LOG_FILES_TO_CHECK=1
ports:
- "5234:5000"
command: ["sh", "/app/entrypoint.sh"]
restart: unless-stopped
glances:
image: nicolargo/glances:ubuntu-latest-full
container_name: Glances
pid: host
network_mode: host
environment:
- "GLANCES_OPT=-w"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /run/user/1000/podman/podman.sock:/run/user/1000/podman/podman.sock
- /docker:/docker:ro
- /docker-local:/docker-local:ro
- /data:/data:ro
# For intel iGPUs
devices:
- /dev/dri:/dev/dri
restart: unless-stopped
hbbr: hbbr:
image: rustdesk/rustdesk-server:latest image: rustdesk/rustdesk-server:latest
container_name: hbbr container_name: hbbr
@@ -506,7 +701,7 @@ services:
environment: environment:
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
- TZ=Pacific/Auckland - TZ=${TZ}
- HOMEPAGE_ALLOWED_HOSTS=${HOMEPAGE_ALLOWED_HOSTS} - HOMEPAGE_ALLOWED_HOSTS=${HOMEPAGE_ALLOWED_HOSTS}
volumes: volumes:
- ./services/Homepage/config/images:/app/public/images - ./services/Homepage/config/images:/app/public/images
@@ -516,6 +711,16 @@ services:
- 7575:3000 - 7575:3000
restart: unless-stopped restart: unless-stopped
iperf:
image: networkstatic/iperf3
container_name: iperf3-server
stdin_open: true # docker run -i
tty: true # docker run -t
command: -s
ports:
- '5201:5201'
restart: unless-stopped
newt: newt:
image: fosrl/newt image: fosrl/newt
container_name: newt container_name: newt
@@ -526,7 +731,7 @@ services:
restart: unless-stopped restart: unless-stopped
racknerd-api-converter: racknerd-api-converter:
build: ./racknerd-converter build: ./services/racknerd-converter
container_name: RacknerdConverter container_name: RacknerdConverter
environment: environment:
- RACKNERD_API_KEY=${RACKNERD_API_KEY} - RACKNERD_API_KEY=${RACKNERD_API_KEY}
@@ -599,6 +804,25 @@ services:
volumes: volumes:
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
whisper:
image: linuxserver/faster-whisper:latest
container_name: faster-whisper
environment:
- PUID=1000
- PGID=1000
- TZ=${TZ}
- WHISPER_MODEL=tiny-int8
- WHISPER_BEAM=1 #optional
- WHISPER_LANG=en #optional
volumes:
- ./services/whisper:/config
ports:
- 10300:10300
restart: unless-stopped
networks:
arr_network:
ipv4_address: 172.20.0.15
networks: networks:
arr_network: arr_network:
driver: bridge driver: bridge
@@ -611,7 +835,6 @@ networks:
ipam: ipam:
config: config:
- subnet: 172.21.0.0/16 - subnet: 172.21.0.0/16
volumes: volumes:
aidata: aidata:
dbdata: dbdata: