commit 19ccce5af40a1d944cad584440f1c590bea64dd3 Author: Croft Date: Mon Jun 30 14:08:43 2025 +0200 init diff --git a/download/compose.yaml b/download/compose.yaml new file mode 100644 index 0000000..8f13b33 --- /dev/null +++ b/download/compose.yaml @@ -0,0 +1,270 @@ +services: + vpn: + image: qmcgaw/gluetun + container_name: vpn + cap_add: + - NET_ADMIN + - SYS_MODULE + networks: + arrnet: + ipv4_address: 172.20.0.6 + devices: + - /dev/net/tun:/dev/net/tun + environment: + - VPN_SERVICE_PROVIDER=protonvpn + - VPN_TYPE=wireguard + - WIREGUARD_PRIVATE_KEY=aL8IJ+iFRftclHiwI0U4BwMIzSSAXIkA9lzp3YvwoWU= + - SERVER_COUNTRIES=Netherlands + - VPN_PORT_FORWARDING=on + ports: + # # qbittorrent ports + # - 5080:5080 + # - 6881:6881 + # - 6881:6881/udp + # prowlarr ports + # - 9696:9696 + # sbnzbd ports + - 8080:8080 + # flaresolverr ports + # - 8191:8191 + # # notifiarr ports + # - 5454:5454 + volumes: + - /lib/modules:/lib/modules:ro + restart: unless-stopped + + autobrr: + image: ghcr.io/autobrr/autobrr:latest + container_name: autobrr + #logging: + # driver: json-file + # options: + # max-file: ${DOCKERLOGGING_MAXFILE} + # max-size: ${DOCKERLOGGING_MAXSIZE} + user: 1000:1000 + networks: + arrnet: + ipv4_address: 172.20.0.4 + ports: + - 7474:7474 + environment: + - TZ="Europe/Berlin" + volumes: + - /mnt/configs/autobrr:/config + restart: unless-stopped + + # qbittorrent: + # image: lscr.io/linuxserver/qbittorrent:latest + # container_name: qbittorrent + # network_mode: service:vpn + # environment: + # - PUID=1000 + # - PGID=1000 + # - TZ=Europe/Berlin + # - WEBUI_PORT=5080 + # volumes: + # - /mnt/configs/qbittorrent:/config + # - /mnt/download:/downloads + # # - nfs-qbittorrent-config:/config + # # - nfs-torrent-download:/downloads + # depends_on: + # vpn: + # condition: service_healthy + # restart: unless-stopped + + sabnzbd: + image: lscr.io/linuxserver/sabnzbd:latest + container_name: sabnzbd + depends_on: + vpn: + condition: service_healthy + network_mode: service:vpn + environment: + - PUID=1000 + - PGID=1000 + - TZ=Etc/UTC + volumes: + - /mnt/configs/sabnzbd:/config + - /mnt/download:/downloads + restart: unless-stopped + + radarr: + image: lscr.io/linuxserver/radarr:latest + container_name: radarr + networks: + arrnet: + ipv4_address: 172.20.0.2 + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Berlin + ports: + - 7878:7878 + volumes: + - /mnt/configs/radarr:/config + - /mnt/download:/downloads + restart: unless-stopped + + radarr-anime: + image: lscr.io/linuxserver/radarr:latest + container_name: radarr-anime + networks: + arrnet: + ipv4_address: 172.20.0.9 + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Berlin + ports: + - 7879:7878 + volumes: + - /mnt/configs/radarr-anime:/config + - /mnt/download:/downloads + restart: unless-stopped + + sonarr: + image: linuxserver/sonarr:latest + container_name: sonarr + networks: + arrnet: + ipv4_address: 172.20.0.3 + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Berlin + volumes: + - /mnt/configs/sonarr:/config + - /mnt/download:/downloads + ports: + - 8989:8989 + restart: unless-stopped + + sonarr-anime: + image: linuxserver/sonarr:latest + container_name: sonarr-anime + networks: + arrnet: + ipv4_address: 172.20.0.10 + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Berlin + volumes: + - /mnt/configs/sonarr-anime:/config + - /mnt/download:/downloads + ports: + - 8990:8989 + restart: unless-stopped + + prowlarr: + image: linuxserver/prowlarr:latest + container_name: prowlarr + # depends_on: + # vpn: + # condition: service_healthy + # network_mode: service:vpn + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Berlin + volumes: + - /mnt/configs/prowlarr:/config + ports: + - 9696:9696 + restart: unless-stopped + + jellyseerr: + image: fallenbagel/jellyseerr:latest + container_name: jellyseerr + networks: + arrnet: + ipv4_address: 172.20.0.7 + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Berlin + volumes: + - /mnt/configs/jellyseerr:/app/config + ports: + - 5055:5055 + restart: unless-stopped + + # recommendarr: + # container_name: recommendarr + # image: tannermiddleton/recommendarr:v1.3.0 + # networks: + # arrnet: + # ipv4_address: 172.20.0.5 + # environment: + # - NODE_ENV=production + # - DOCKER_ENV=true + # - PORT=3000 + # - PUBLIC_URL=https://localhost:3000 # Change this public URL if you are accessing recommendarr on a domain + # volumes: + # - nfs-recommendarr-data:/app/server/data + # ports: + # - 3000:3000 + # restart: unless-stopped + + bazarr: + image: lscr.io/linuxserver/bazarr:latest + container_name: bazarr + networks: + arrnet: + ipv4_address: 172.20.0.8 + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Berlin + volumes: + - /mnt/configs/bazarr:/config + - /mnt/download:/downloads + ports: + - 6767:6767 + restart: unless-stopped + + flaresolverr: + image: ghcr.io/flaresolverr/flaresolverr:latest + container_name: flaresolverr + # depends_on: + # vpn: + # condition: service_healthy + # network_mode: service:vpn + environment: + - CAPTCHA_SOLVER=none + - TZ=Europe/Berlin + ports: + - 8191:8191 + restart: unless-stopped + + notifiarr: + container_name: notifiarr + # hostname: notifiarr + image: golift/notifiarr + # depends_on: + # vpn: + # condition: service_healthy + # network_mode: service:vpn + networks: + arrnet: + ipv4_address: 172.20.0.11 + restart: unless-stopped + ports: + - 5454:5454 + volumes: + - /mnt/configs/notifiarr:/config + + huntarr: + image: huntarr/huntarr:latest + container_name: huntarr + restart: always + ports: + - "9705:9705" + volumes: + - /mnt/configs/huntarr:/config + environment: + - TZ=Europe/Berlin + +networks: + arrnet: + external: true \ No newline at end of file diff --git a/jellyfin/compose.yaml b/jellyfin/compose.yaml new file mode 100644 index 0000000..7b01294 --- /dev/null +++ b/jellyfin/compose.yaml @@ -0,0 +1,94 @@ +services: + jellyfin: + image: linuxserver/jellyfin:latest + container_name: jellyfin + #user: 1000:1000 + environment: + - PUID=1000 + - PGID=1000 + - TZ=Europe/Berlin + volumes: + - /mnt/jellyfin:/config + - /mnt/transcode:/transcode + - /mnt/download:/data + ports: + - 8096:8096 + - 7359:7359/udp + - 8920:8920 + restart: unless-stopped + runtime: nvidia + deploy: + resources: + reservations: + devices: + - driver: nvidia + count: all + capabilities: [gpu] + + tdarr: + container_name: tdarr + image: ghcr.io/haveagitgat/tdarr:latest + restart: unless-stopped + network_mode: bridge + ports: + - 8265:8265 # webUI port + - 8266:8266 # server port + environment: + - TZ=Europe/Berlin + - PUID=1000 + - PGID=1000 + - UMASK_SET=002 + - serverIP=0.0.0.0 + - serverPort=8266 + - webUIPort=8265 + - internalNode=true + - inContainer=true + - ffmpegVersion=7 + - nodeName=vmgpu + - auth=false + - maxLogSizeMB=10 + - cronPluginUpdate="5 7 * * *" + - NVIDIA_DRIVER_CAPABILITIES=all + - NVIDIA_VISIBLE_DEVICES=all + volumes: + - /mnt/configs/tdarr/server:/app/server + - /mnt/configs/tdarr/configs:/app/configs + - /mnt/configs/tdarr/logs:/app/logs + - /mnt/download:/media + - /mnt/transcode:/temp + devices: + - /dev/dri:/dev/dri + deploy: + resources: + reservations: + devices: + - driver: nvidia + count: all + capabilities: [gpu] + + fileflows: + image: revenz/fileflows + restart: unless-stopped + runtime: nvidia + ports: + - "19200:5000" + environment: + - TempPathHost=/mnt/transcode + - TZ=Europe/Berlin + - PUID=1000 + - PGID=1000 + - NVIDIA_DRIVER_CAPABILITIES=compute,video,utility + - NVIDIA_VISIBLE_DEVICES=all + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + - /mnt/transcode:/temp + - /mnt/download:/app/Data + - /mnt/configs/fileflows/logs:/app/Logs + - /mnt/configs/fileflows/common:/app/common + deploy: + resources: + reservations: + devices: + - driver: nvidia + count: all + capabilities: [gpu] \ No newline at end of file diff --git a/paperless-ngx/compose.yaml b/paperless-ngx/compose.yaml new file mode 100644 index 0000000..bc21004 --- /dev/null +++ b/paperless-ngx/compose.yaml @@ -0,0 +1,69 @@ +# Docker Compose file for running paperless from the docker container registry. +# This file contains everything paperless needs to run. +# Paperless supports amd64, arm and arm64 hardware. +# All compose files of paperless configure paperless in the following way: +# +# - Paperless is (re)started on system boot, if it was running before shutdown. +# - Docker volumes for storing data are managed by Docker. +# - Folders for importing and exporting files are created in the same directory +# as this file and mounted to the correct folders inside the container. +# - Paperless listens on port 8000. +# +# SQLite is used as the database. The SQLite file is stored in the data volume. +# +# In addition to that, this Docker Compose file adds the following optional +# configurations: +# +# - Apache Tika and Gotenberg servers are started with paperless and paperless +# is configured to use these services. These provide support for consuming +# Office documents (Word, Excel, Power Point and their LibreOffice counter- +# parts. +# +# To install and update paperless with this file, do the following: +# +# - Copy this file as 'docker-compose.yml' and the files 'docker-compose.env' +# and '.env' into a folder. +# - Run 'docker compose pull'. +# - Run 'docker compose up -d'. +# +# For more extensive installation and update instructions, refer to the +# documentation. + +services: + broker: + image: docker.io/library/redis:8 + restart: unless-stopped + volumes: + - /appdata/paperless-ngx/redisdata:/data + webserver: + image: ghcr.io/paperless-ngx/paperless-ngx:2.14.7 + restart: unless-stopped + depends_on: + - broker + - gotenberg + - tika + ports: + - "8000:8000" + volumes: + - /appdata/paperless-ngx/data:/usr/src/paperless/data + - /appdata/paperless-ngx/media:/usr/src/paperless/media + - /appdata/paperless-ngx/export:/usr/src/paperless/export + - /appdata/paperless-ngx/consume:/usr/src/paperless/consume + env_file: docker-compose.env + environment: + PAPERLESS_REDIS: redis://broker:6379 + PAPERLESS_TIKA_ENABLED: 1 + PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000 + PAPERLESS_TIKA_ENDPOINT: http://tika:9998 + gotenberg: + image: docker.io/gotenberg/gotenberg:8.20 + restart: unless-stopped + # The gotenberg chromium route is used to convert .eml files. We do not + # want to allow external content like tracking pixels or even javascript. + command: + - "gotenberg" + - "--chromium-disable-javascript=true" + - "--chromium-allow-list=file:///tmp/.*" + tika: + image: docker.io/apache/tika:latest + restart: unless-stopped