adds new gitgnore to repo

This commit is contained in:
tim
2025-09-21 21:56:39 +02:00
parent 68e1b6d0b4
commit df694656f4
48 changed files with 219456 additions and 7 deletions

57
.gitignore vendored
View File

@@ -1,8 +1,51 @@
data
**/data/
log
**/log/
# Global environment file
global.env
# Common data directories
data/
config/
logs/
backups/
certs/
media/
postgres/
mongodb/
letsencrypt/
vw-data/
# Database files
*.db
*.db-shm
*.db-wal
*.pid
# Log files
*.log
*.log.*
# Environment files
.env
**/.env
vw-data
**/vw-data
*.env
# Temporary files
*.tmp
*.temp
*.bak
# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
# IDE files
.vscode/
.idea/
*.swp
*.swo
# Docker files
.dockerignore

23
Sonarr/Sonarr.yml Normal file
View File

@@ -0,0 +1,23 @@
# This file is auto-generated by openmediavault (https://www.openmediavault.org)
# WARNING: Do not edit this file, your changes will get lost.
# Sonarr
#
---
version: "2.1"
services:
sonarr:
image: lscr.io/linuxserver/sonarr:latest
container_name: sonarr
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
volumes:
- /containers/sonarr:/config
- /containers/sonarr/tvseries:/tv #optional
- /containers/sonarr/downloadclient-downloads:/downloads #optional
ports:
- 8989:8989
restart: unless-stopped

169
arr-Stack/arr-Stack.yml Normal file
View File

@@ -0,0 +1,169 @@
# This file is auto-generated by openmediavault (https://www.openmediavault.org)
# WARNING: Do not edit this file, your changes will get lost.
# arr-Stack
#
version: "3"
services:
gluetun:
image: qmcgaw/gluetun
container_name: gluetun
security_opt:
- seccomp:unconfined
- apparmor=unconfined
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun:/dev/net/tun
ports:
- 6881:6881
- 6881:6881/udp
- 8085:8085 # qbittorrent
- 9117:9117 # Jackett
- 8989:8989 # Sonarr
- 9696:9696 # Prowlarr
- 8686:8686 # Lidarr
- 8787:8787 # Readarr
- 8191:8191 # Flaresolverr
volumes:
- /containers/arr/guetun:/gluetun
environment:
- VPN_SERVICE_PROVIDER=custom
- VPN_TYPE=openvpn
- OPENVPN_USER=blablalba1
- OPENVPN_PASSWORD=4AkmyeOnD6kP
- OPENVPN_CUSTOM_CONFIG=/gluetun/custom.conf
- TZ=Europe/Berlin
- UPDATER_PERIOD=24h
qbittorrent:
image: lscr.io/linuxserver/qbittorrent
container_name: qbittorrent
network_mode: "service:gluetun"
security_opt:
- seccomp:unconfined
- apparmor=unconfined
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/London
- WEBUI_PORT=8085
volumes:
- /containers/arr/qbittorrent:/config
- /srv/dev-disk-by-uuid-1a244e24-c185-4bd7-8f98-658205a33b7a/arr/torrents:/downloads
depends_on:
- gluetun
restart: always
jackett:
image: lscr.io/linuxserver/jackett:latest
container_name: jackett
network_mode: "service:gluetun"
security_opt:
- seccomp:unconfined
- apparmor=unconfined
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
- AUTO_UPDATE=true #optional
- RUN_OPTS= #optional
volumes:
- /home/ubuntu/docker/arr-stack/jackett/data:/config
- /home/ubuntu/docker/arr-stack/jackett/blackhole:/downloads
depends_on:
- gluetun
restart: always
sonarr:
image: lscr.io/linuxserver/sonarr:latest
container_name: sonarr
network_mode: "service:gluetun"
security_opt:
- seccomp:unconfined
- apparmor=unconfined
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
volumes:
- /containers/sonarr:/config
- /containers/sonarr/tvseries:/tv #optional
- /containers/sonarr/downloadclient-downloads:/downloads #optional
depends_on:
- gluetun
restart: always
prowlarr:
image: lscr.io/linuxserver/prowlarr:latest
container_name: prowlarr
network_mode: "service:gluetun"
security_opt:
- seccomp:unconfined
- apparmor=unconfined
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
volumes:
- /containers/prowlarr:/config
depends_on:
- gluetun
restart: always
lidarr:
image: lscr.io/linuxserver/lidarr:latest
container_name: lidarr
network_mode: "service:gluetun"
security_opt:
- seccomp:unconfined
- apparmor=unconfined
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
volumes:
- /containers/lidarr/config:/config
- /srv/dev-disk-by-uuid-1a244e24-c185-4bd7-8f98-658205a33b7a/arr/media/music:/music
- /srv/dev-disk-by-uuid-1a244e24-c185-4bd7-8f98-658205a33b7a/arr/torrents:/downloads
depends_on:
- gluetun
restart: always
readarr:
image: lscr.io/linuxserver/readarr:develop
container_name: readarr
network_mode: "service:gluetun"
security_opt:
- seccomp:unconfined
- apparmor=unconfined
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
volumes:
- /containers/readarr/config:/config
- /srv/dev-disk-by-uuid-1a244e24-c185-4bd7-8f98-658205a33b7a/arr/media/books:/books #optional
- /srv/dev-disk-by-uuid-1a244e24-c185-4bd7-8f98-658205a33b7a/arr/torrents:/downloads #optional
depends_on:
- gluetun
restart: always
flaresolverr:
image: ghcr.io/flaresolverr/flaresolverr:latest
container_name: flaresolverr
network_mode: "service:gluetun"
security_opt:
- seccomp:unconfined
- apparmor=unconfined
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
depends_on:
- gluetun
restart: unless-stopped

12
arr/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# ARR applications data directories
qbittorrent/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

99
arr/guetun/custom.conf Executable file
View File

@@ -0,0 +1,99 @@
client
dev tun
proto udp
#remote pl.hideservers.net 3000
remote 149.102.244.5 3000
cipher AES-256-CBC
auth SHA256
resolv-retry infinite
nobind
persist-key
persist-tun
mute-replay-warnings
verb 3
auth-user-pass
reneg-sec 900
remote-cert-tls server
verify-x509-name "*.hide.me" name
tls-version-min 1.2
<ca>
-----BEGIN CERTIFICATE-----
MIIKJDCCBgygAwIBAgIQVc9ekKx5ZIkHcGchmaaVEzANBgkqhkiG9w0BAQ0FADCB
kTELMAkGA1UEBhMCTVkxHDAaBgNVBAgME1dpbGF5YWggUGVyc2VrdXR1YW4xDzAN
BgNVBAcMBkxhYnVhbjEZMBcGA1UECgwQZVZlbnR1cmUgTGltaXRlZDEeMBwGA1UE
CwwVQ2VydGlmaWNhdGUgQXV0aG9yaXR5MRgwFgYDVQQDDA9IaWRlLk1lIFJvb3Qg
Q0EwHhcNMTYwMTE3MjExMDI0WhcNNDYwMTA5MjExMDI0WjCBkTELMAkGA1UEBhMC
TVkxHDAaBgNVBAgME1dpbGF5YWggUGVyc2VrdXR1YW4xDzANBgNVBAcMBkxhYnVh
bjEZMBcGA1UECgwQZVZlbnR1cmUgTGltaXRlZDEeMBwGA1UECwwVQ2VydGlmaWNh
dGUgQXV0aG9yaXR5MRgwFgYDVQQDDA9IaWRlLk1lIFJvb3QgQ0EwggQiMA0GCSqG
SIb3DQEBAQUAA4IEDwAwggQKAoIEAQDX8zVTP6FQ4gJ+4e06bxvxifNHK8ht0RZn
zCNrrwkekpB4ojXDghNfS38oK80RfygC8LXN7SnLv+0xw5dRZ3QVIZJnd/DtX2EF
ZVxMyccJkLj8IEZv4Yx7zPnKI9EcQwo64O7npz28JZAGwexmK1W7ohm9VaAAtUPY
6Ej7k/wsJi2d5BeHzYRrfJX3nEft8hbotwsFLPsngDciS3yE2B5zH/PJOZ5uzr/5
djAbeFktfHR6ywbxE2CYjz2pVUfqvzjzwNj5BJPp3K5iTL/oL1xrAkQ5xSPtHbP0
ZCMmR//PC73cqkI6bAw8YAjvq0CG7wSC3rCfzgz3RGGPHMVUmB+GGu1KZoGisexm
9Y3ovmgubM+eE23aMBObf6tcRp1hSv7+EenlqAbyqQ5JqltWgsjEcV6THRKFmlSS
CP84kZK+nLnoto6MEG8sK9d02+iYWPQbVQ9X7O6pMHgVj7vnOLuW6i+hKT/pcsnU
8yhu2495Q07NDAAeX12dMbHhfLAs+DMtxjkj9SxejCS3Gi/XxON0E1NVVNEcl4yu
TODIJVfh/+uDdUn6v8tP7XmIFlKlfyQzfxND/VlRAep1Tt4i04KAhW0SG5/qaXoP
YROoP7eA0igKI5PxGbUZw/ym0i+1iXHR5XqfavZRM6gpOlDH2D9Mo64JfJTWT8J0
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
K127pRfgZn0=
-----END CERTIFICATE-----
</ca>
<tls-crypt>
-----BEGIN OpenVPN Static key V1-----
8d25d82e75abbcdd73fb17b2ba5d1af2
2d0e026ac8608ec8e51ecb0b3b1b5dba
8ac1f6e556e4b4e3545e979dd26e2d9d
5bc28c1d75b4e37531aabf5da3cba671
1f8998eb66aa290daab6122bdfcb1aa3
b9b428e722ea6e7edd9b878a5161c555
14e6233d18b5cc34e859ecb5852b34ed
6e539d64676edf9ad79470795ae73184
05d93554de1063aec1df6420709c2dcc
79511fa9c5e82de09d560f7d92001ea2
75e4b3e9b6ce19687968b4813d6a9d61
a48311658de88d651edb4eab447d73f6
b209d144a3343a2c992b09c7501cad77
cdf5c6b3be5f9919854bb10182c86794
9df929173b8e98aeea9ffe277eddd7f7
936232e1e44c9feb7a3a2753ed05c90b
-----END OpenVPN Static key V1-----
</tls-crypt>

218125
arr/guetun/servers.json Normal file

File diff suppressed because it is too large Load Diff

14
authentik/.gitignore vendored Normal file
View File

@@ -0,0 +1,14 @@
# Authentik data directories
data/
media/
certs/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

View File

@@ -0,0 +1,110 @@
services:
postgresql:
env_file:
- .env
environment:
POSTGRES_DB: ${PG_DB:-authentik}
POSTGRES_PASSWORD: ${PG_PASS:?database password required}
POSTGRES_USER: ${PG_USER:-authentik}
healthcheck:
interval: 30s
retries: 5
start_period: 20s
test:
- CMD-SHELL
- pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}
timeout: 5s
image: docker.io/library/postgres:16-alpine
restart: unless-stopped
volumes:
- ./data/postgres:/var/lib/postgresql/data
redis:
command: --save 60 1 --loglevel warning
healthcheck:
interval: 30s
retries: 5
start_period: 20s
test:
- CMD-SHELL
- redis-cli ping | grep PONG
timeout: 3s
image: docker.io/library/redis:alpine
restart: unless-stopped
volumes:
- ./data/redis:/data
server:
command: server
depends_on:
postgresql:
condition: service_healthy
redis:
condition: service_healthy
env_file:
- .env
environment:
AUTHENTIK_POSTGRESQL__HOST: postgresql
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
AUTHENTIK_REDIS__HOST: redis
AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY:?secret key required}
AUTHENTIK_HOST: ${AUTHENTIK_HOST}
TZ: ${TZ}
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2025.8.3}
ports:
- ${COMPOSE_PORT_HTTP:-9000}:9000
- ${COMPOSE_PORT_HTTPS:-9443}:9443
restart: unless-stopped
volumes:
- ./media:/media
- ./custom-templates:/templates
worker:
command: worker
depends_on:
postgresql:
condition: service_healthy
redis:
condition: service_healthy
env_file:
- .env
environment:
AUTHENTIK_POSTGRESQL__HOST: postgresql
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
AUTHENTIK_REDIS__HOST: redis
AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY:?secret key required}
AUTHENTIK_HOST: ${AUTHENTIK_HOST}
TZ: ${TZ}
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2025.8.3}
restart: unless-stopped
user: root
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./media:/media
- ./certs:/certs
- ./custom-templates:/templates
pgbackups:
image: prodrigestivill/postgres-backup-local:16
restart: unless-stopped
depends_on:
postgresql:
condition: service_healthy
env_file:
- .env
environment:
POSTGRES_HOST: ${PG_HOST}
POSTGRES_PORT: ${PG_PORT}
POSTGRES_DB: ${PG_DB}
POSTGRES_USER: ${PG_USER}
POSTGRES_PASSWORD: ${PG_PASS}
SCHEDULE: "0 3 * * *" # täglich 03:00
BACKUP_DIR: /backups
BACKUP_KEEP_DAYS: "14" # 7 Tage aufbewahren
BACKUP_KEEP_WEEKS: "4" # plus 4 Wochen-Snapshots
BACKUP_KEEP_MONTHS: "6" # plus 6 Monats-Snapshots
TZ: ${TZ}
COMPRESSION: "gzip" # .sql.gz (plain SQL Dump)
volumes:
- /mnt/backup/authentik:/backups

12
bazarr/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# Bazarr config directory
config/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

12
calibre-web/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# Calibre-web config directory
config/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

View File

@@ -0,0 +1,26 @@
# This file is auto-generated by openmediavault (https://www.openmediavault.org)
# WARNING: Do not edit this file, your changes will get lost.
# calibre-web
#
---
version: "2.1"
services:
calibre-web:
image: lscr.io/linuxserver/calibre-web:latest
container_name: calibre-web
security_opt:
- seccomp:unconfined
- apparmor=unconfined
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
- DOCKER_MODS=linuxserver/mods:universal-calibre #optional
- OAUTHLIB_RELAX_TOKEN_SCOPE=1 #optional
volumes:
- /containers/calibre-web/config:/config
- /srv/dev-disk-by-uuid-1a244e24-c185-4bd7-8f98-658205a33b7a/ebooks:/books
ports:
- 8083:8083
restart: unless-stopped

26
calibre/calibre.yml Normal file
View File

@@ -0,0 +1,26 @@
# This file is auto-generated by openmediavault (https://www.openmediavault.org)
# WARNING: Do not edit this file, your changes will get lost.
# calibre
#
---
version: "2.1"
services:
calibre:
image: lscr.io/linuxserver/calibre:latest
container_name: calibre
security_opt:
- seccomp:unconfined
- apparmor=unconfined
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
- PASSWORD= #optional
- CLI_ARGS= #optional
volumes:
- /srv/dev-disk-by-uuid-1a244e24-c185-4bd7-8f98-658205a33b7a/ebooks:/config
ports:
- 8080:8080
- 8081:8081
restart: unless-stopped

12
deluge/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# Deluge config directory
config/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

12
freshrss/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# FreshRSS config directory
config/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

View File

@@ -0,0 +1,18 @@
---
version: '3'
services:
freshrss:
image: linuxserver/freshrss:latest
container_name: freshrss
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
volumes:
- ./config:/config
restart: unless-stopped
networks:
default:
external:
name: npm

12
gitea/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# Gitea data directory
data/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

55
gitea/docker-compose.yaml Normal file
View File

@@ -0,0 +1,55 @@
networks:
default:
external: true
name: traefik
services:
server:
image: gitea/gitea
container_name: gitea
restart: always
environment:
- USER_UID=1000
- USER_GID=1000
volumes:
- ./data:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "2345:3000"
- "2346:22"
healthcheck:
# checks availability of Gitea's front-end with curl
test: ["CMD", "curl", "-f", "http://localhost:3000"]
interval: 10s
retries: 3
start_period: 30s
timeout: 10s
labels:
- "traefik.enable=true"
- "traefik.http.routers.gitea-secure.entrypoints=websecure"
- "traefik.http.routers.gitea-secure.rule=Host(`git.unkrig.dev`)"
- "traefik.http.routers.gitea-secure.tls=true"
- "traefik.http.routers.gitea-secure.service=gitea@docker"
- "traefik.http.services.gitea.loadbalancer.server.port=3000"
- "traefik.docker.network=traefik"
security_opt:
- no-new-privileges:true
runner-1:
image: gitea/act_runner
restart: always
depends_on:
server:
# required so runner can attach to gitea, see "healthcheck"
condition: service_healthy
volumes:
- ./data/act_runner:/data
- /var/run/docker.sock:/var/run/docker.sock
environment:
- GITEA_INSTANCE_URL=https://git.unkrig.dev
# When using Docker Secrets, it's also possible to use
# GITEA_RUNNER_REGISTRATION_TOKEN_FILE to pass the location.
# The env var takes precedence.
# Needed only for the first start.
- GITEA_RUNNER_REGISTRATION_TOKEN=2rhXpOnN2fcX99evlq4Gz7XqVnFkbuUoIWLqefM5

View File

@@ -0,0 +1,23 @@
version: "3"
networks:
gitea:
external: false
services:
server:
image: gitea/gitea
container_name: gitea
environment:
- USER_UID=1000
- USER_GID=1000
restart: always
networks:
- gitea
volumes:
- ./data:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "2345:3000"
- "2346:22"

View File

@@ -0,0 +1,23 @@
version: "3"
networks:
gitea:
external: false
services:
server:
image: gitea/gitea
container_name: gitea
environment:
- USER_UID=1000
- USER_GID=1000
restart: always
networks:
- gitea
volumes:
- ./data:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "2345:3000"
- "2346:22"

12
immich/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# Immich postgres data directory
postgres/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

View File

@@ -0,0 +1,82 @@
# This file is auto-generated by openmediavault (https://www.openmediavault.org)
# WARNING: Do not edit this file, your changes will get lost.
# immich
#
#
# WARNING: To install Immich, follow our guide: https://immich.app/docs/install/docker-compose
#
# Make sure to use the docker-compose.yml of the current release:
#
# https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
#
# The compose file on main may not be compatible with the latest release.
name: immich
services:
immich-server:
container_name: immich_server
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
security_opt:
- apparmor=unconfined
devices:
- /dev/dri:/dev/dri
volumes:
# Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
- /mnt/photos:/mnt/media:ro
ports:
- '2283:2283'
depends_on:
- redis
- database
restart: always
healthcheck:
disable: false
immich-machine-learning:
container_name: immich_machine_learning
# For hardware acceleration, add one of -[armnn, cuda, rocm, openvino, rknn] to the image tag.
# Example tag: ${IMMICH_VERSION:-release}-cuda
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}-openvino
security_opt:
- apparmor=unconfined
extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
file: hwaccel.ml.yml
service: openvino # set to one of [armnn, cuda, rocm, openvino, openvino-wsl, rknn] for accelerated inference - use the `-wsl` version for WSL2 where applicable
volumes:
- model-cache:/cache
restart: always
healthcheck:
disable: false
redis:
container_name: immich_redis
image: docker.io/valkey/valkey:8-bookworm@sha256:fec42f399876eb6faf9e008570597741c87ff7662a54185593e74b09ce83d177
security_opt:
- apparmor=unconfined
healthcheck:
test: redis-cli ping || exit 1
restart: always
database:
container_name: immich_postgres
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.2-pgvectors0.2.0
security_opt:
- apparmor=unconfined
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
POSTGRES_INITDB_ARGS: '--data-checksums'
# Uncomment the DB_STORAGE_TYPE: 'HDD' var if your database isn't stored on SSDs
# DB_STORAGE_TYPE: 'HDD'
volumes:
# Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
- ${DB_DATA_LOCATION}:/var/lib/postgresql/data
restart: always
volumes:
model-cache:

57
immich/hwaccel.ml.yml Normal file
View File

@@ -0,0 +1,57 @@
# Configurations for hardware-accelerated machine learning
# If using Unraid or another platform that doesn't allow multiple Compose files,
# you can inline the config for a backend by copying its contents
# into the immich-machine-learning service in the docker-compose.yml file.
# See https://immich.app/docs/features/ml-hardware-acceleration for info on usage.
services:
armnn:
devices:
- /dev/mali0:/dev/mali0
volumes:
- /lib/firmware/mali_csffw.bin:/lib/firmware/mali_csffw.bin:ro # Mali firmware for your chipset (not always required depending on the driver)
- /usr/lib/libmali.so:/usr/lib/libmali.so:ro # Mali driver for your chipset (always required)
rknn:
security_opt:
- systempaths=unconfined
- apparmor=unconfined
devices:
- /dev/dri:/dev/dri
cpu: {}
cuda:
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities:
- gpu
rocm:
group_add:
- video
devices:
- /dev/dri:/dev/dri
- /dev/kfd:/dev/kfd
openvino:
device_cgroup_rules:
- 'c 189:* rmw'
devices:
- /dev/dri:/dev/dri
volumes:
- /dev/bus/usb:/dev/bus/usb
openvino-wsl:
devices:
- /dev/dri:/dev/dri
- /dev/dxg:/dev/dxg
volumes:
- /dev/bus/usb:/dev/bus/usb
- /usr/lib/wsl:/usr/lib/wsl

View File

@@ -0,0 +1,55 @@
# Configurations for hardware-accelerated transcoding
# If using Unraid or another platform that doesn't allow multiple Compose files,
# you can inline the config for a backend by copying its contents
# into the immich-microservices service in the docker-compose.yml file.
# See https://immich.app/docs/features/hardware-transcoding for more info on using hardware transcoding.
services:
cpu: {}
nvenc:
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities:
- gpu
- compute
- video
quicksync:
devices:
- /dev/dri:/dev/dri
rkmpp:
security_opt: # enables full access to /sys and /proc, still far better than privileged: true
- systempaths=unconfined
- apparmor=unconfined
group_add:
- video
devices:
- /dev/rga:/dev/rga
- /dev/dri:/dev/dri
- /dev/dma_heap:/dev/dma_heap
- /dev/mpp_service:/dev/mpp_service
#- /dev/mali0:/dev/mali0 # only required to enable OpenCL-accelerated HDR -> SDR tonemapping
volumes:
#- /etc/OpenCL:/etc/OpenCL:ro # only required to enable OpenCL-accelerated HDR -> SDR tonemapping
#- /usr/lib/aarch64-linux-gnu/libmali.so.1:/usr/lib/aarch64-linux-gnu/libmali.so.1:ro # only required to enable OpenCL-accelerated HDR -> SDR tonemapping
vaapi:
devices:
- /dev/dri:/dev/dri
vaapi-wsl: # use this for VAAPI if you're running Immich in WSL2
devices:
- /dev/dri:/dev/dri
- /dev/dxg:/dev/dxg
volumes:
- /usr/lib/wsl:/usr/lib/wsl
environment:
- LIBVA_DRIVER_NAME=d3d12

12
lidarr/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# Lidarr config directory
config/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

13
old/npm/.gitignore vendored Normal file
View File

@@ -0,0 +1,13 @@
# NPM data directories
data/
letsencrypt/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

View File

@@ -0,0 +1,26 @@
version: "3"
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80'
- '443:443'
- '81:81'
# Add any other Stream poOrt you want to expose
- '2222:2222' # gitea SSH
environment:
X_FRAME_OPTIONS: "sameorigin"
DB_SQLITE_FILE: "/data/database.sqlite"
DISABLE_IPV6: 'true'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
healthcheck:
test: ["CMD", "/bin/check-health"]
interval: 10s
timeout: 3s
networks:
default:
external:
name: npm

13
old/unifi/.gitignore vendored Normal file
View File

@@ -0,0 +1,13 @@
# UniFi data directories
data/
mongodb/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

View File

@@ -0,0 +1,39 @@
---
version: '3'
services:
unifi-db:
image: docker.io/mongo:4.4
container_name: unifi-db
environment:
PUID: 1000
GUID: 1000
volumes:
- /srv/unifi/mongodb/data:/data/db
- /srv/unifi/mongodb/init-mongo.js:/docker-entrypoint-initdb.d/init-mongo.js:ro
restart: unless-stopped
unifi-network-application:
image: lscr.io/linuxserver/unifi-network-application:latest
container_name: unifi-network-application
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
- MONGO_USER=unifi
- MONGO_PASS=unifi
- MONGO_HOST=unifi-db
- MONGO_PORT=27017
- MONGO_DBNAME=unifi
volumes:
- /srv/unifi/data:/config
ports:
- 8443:8443
- 3478:3478/udp
- 10001:10001/udp
- 8080:8080
- 1900:1900/udp #optional
- 8843:8843 #optional
- 8880:8880 #optional
- 6789:6789 #optional
- 5514:5514/udp #optional
restart: unless-stopped

12
pi-hole/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# Pi-hole data directory
data/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

View File

@@ -0,0 +1,24 @@
version: "3"
# More info at https://github.com/pi-hole/docker-pi-hole/ and https://docs.pi-hole.net/
services:
pihole:
container_name: pihole
image: pihole/pihole:latest
# For DHCP it is recommended to remove these ports and instead add: network_mode: "host"
ports:
- "53:53/tcp"
- "53:53/udp"
- "67:67/udp" # Only required if you are using Pi-hole as your DHCP server
- "82:80/tcp"
environment:
TZ: 'Europe/Berlin'
WEBPASSWORD: 'supersecure'
# Volumes store your data between container upgrades
volumes:
- '/srv/pi-hole/data/etc-pihole:/etc/pihole'
- '/srv/pi-hole/data/etc-dnsmasq.d:/etc/dnsmasq.d'
# https://github.com/pi-hole/docker-pi-hole#note-on-capabilities
cap_add:
- NET_ADMIN # Required if you are using Pi-hole as your DHCP server, else not needed
restart: unless-stopped

18
prowlarr/.gitignore vendored Normal file
View File

@@ -0,0 +1,18 @@
# Prowlarr data files
*.db
*.db-shm
*.db-wal
*.pid
Backups/
logs/
Definitions/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<key id="303e0074-982f-4a65-9d23-fe56b8e45232" version="1">
<creationDate>2023-03-10T15:33:33.587563Z</creationDate>
<activationDate>2023-03-10T15:33:33.2289089Z</activationDate>
<expirationDate>2023-06-08T15:33:33.2289089Z</expirationDate>
<descriptor deserializerType="Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60">
<descriptor>
<encryption algorithm="AES_256_CBC" />
<validation algorithm="HMACSHA256" />
<masterKey p4:requiresEncryption="true" xmlns:p4="http://schemas.asp.net/2015/03/dataProtection">
<!-- Warning: the key below is in an unencrypted form. -->
<value>AOkQ3oH39GGoqDy7AYri9ebN/nPdU6eQvLfY/XcbC1ibbvPcKQV89juRQOWt5Gw5ZoZfset8JLoAZgzHAoz8JA==</value>
</masterKey>
</descriptor>
</descriptor>
</key>

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<key id="87a43c6c-ac77-44eb-b01c-0ef1b8e8054b" version="1">
<creationDate>2023-07-03T16:23:30.8384479Z</creationDate>
<activationDate>2023-07-03T16:23:30.70003Z</activationDate>
<expirationDate>2023-10-01T16:23:30.70003Z</expirationDate>
<descriptor deserializerType="Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60">
<descriptor>
<encryption algorithm="AES_256_CBC" />
<validation algorithm="HMACSHA256" />
<masterKey p4:requiresEncryption="true" xmlns:p4="http://schemas.asp.net/2015/03/dataProtection">
<!-- Warning: the key below is in an unencrypted form. -->
<value>GDf6TBhnXQxOzZe+IazAy2upN6uq6anFtF/yqn/rkXNxI4w+TCRBrSNf3M6NWeO+5F/B8NschFYc6QXBjgJrpw==</value>
</masterKey>
</descriptor>
</descriptor>
</key>

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<key id="8d3729c2-c801-4b1b-9935-df29006e7d3e" version="1">
<creationDate>2024-01-02T09:13:26.4519908Z</creationDate>
<activationDate>2024-01-02T09:13:26.1970029Z</activationDate>
<expirationDate>2024-04-01T09:13:26.1970029Z</expirationDate>
<descriptor deserializerType="Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60">
<descriptor>
<encryption algorithm="AES_256_CBC" />
<validation algorithm="HMACSHA256" />
<masterKey p4:requiresEncryption="true" xmlns:p4="http://schemas.asp.net/2015/03/dataProtection">
<!-- Warning: the key below is in an unencrypted form. -->
<value>rg33C/31iuuLyUFKWTSMxPB2I3/0dg+53ZOZjJQs1l9aI9HxKvrqH0ShyNjegLpS1vPZQe5eTrxZeBkQdxcdSw==</value>
</masterKey>
</descriptor>
</descriptor>
</key>

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<key id="a182a6be-1f7f-4dbc-b167-700e52a0b6f9" version="1">
<creationDate>2024-05-30T20:07:17.3707468Z</creationDate>
<activationDate>2024-05-30T20:07:17.2568817Z</activationDate>
<expirationDate>2024-08-28T20:07:17.2568817Z</expirationDate>
<descriptor deserializerType="Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60">
<descriptor>
<encryption algorithm="AES_256_CBC" />
<validation algorithm="HMACSHA256" />
<masterKey p4:requiresEncryption="true" xmlns:p4="http://schemas.asp.net/2015/03/dataProtection">
<!-- Warning: the key below is in an unencrypted form. -->
<value>d0dXlUaGDXN7clnALnCwzE4gPD77S6xEYJUxI6WGA7ATCRZyaZaWSEJOGd4CVDIOwVj5ri0YVoi03HsqA9J01Q==</value>
</masterKey>
</descriptor>
</descriptor>
</key>

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<key id="a7861452-4c5b-4ad8-aa46-1560e87592d4" version="1">
<creationDate>2023-10-01T18:08:02.7230769Z</creationDate>
<activationDate>2023-10-01T18:08:02.2791632Z</activationDate>
<expirationDate>2023-12-30T18:08:02.2791632Z</expirationDate>
<descriptor deserializerType="Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60">
<descriptor>
<encryption algorithm="AES_256_CBC" />
<validation algorithm="HMACSHA256" />
<masterKey p4:requiresEncryption="true" xmlns:p4="http://schemas.asp.net/2015/03/dataProtection">
<!-- Warning: the key below is in an unencrypted form. -->
<value>szR/g/2ucgyP5tvalsao44d2ubsQKPbXcycIy/qxzyVQl64YSKb9hghtkgLSrskr3PWacmsuflFH6IdE7vOm+A==</value>
</masterKey>
</descriptor>
</descriptor>
</key>

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<key id="d0d04762-e5ad-48e1-8132-c73705ab71ac" version="1">
<creationDate>2022-11-29T16:32:31.8082614Z</creationDate>
<activationDate>2022-11-29T16:32:31.7925406Z</activationDate>
<expirationDate>2023-02-27T16:32:31.7925406Z</expirationDate>
<descriptor deserializerType="Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60">
<descriptor>
<encryption algorithm="AES_256_CBC" />
<validation algorithm="HMACSHA256" />
<masterKey p4:requiresEncryption="true" xmlns:p4="http://schemas.asp.net/2015/03/dataProtection">
<!-- Warning: the key below is in an unencrypted form. -->
<value>gl60yBW7CWXVFTqeRmtWKrquvcM4XtgDnwoek+AvBEWI7cFMC9VtW5yieAyhhbOVMFeCCHuNOqiBGajp/tRe9g==</value>
</masterKey>
</descriptor>
</descriptor>
</key>

17
prowlarr/config.xml Normal file
View File

@@ -0,0 +1,17 @@
<Config>
<LogLevel>info</LogLevel>
<UrlBase></UrlBase>
<UpdateMechanism>Docker</UpdateMechanism>
<BindAddress>*</BindAddress>
<Port>9696</Port>
<SslPort>6969</SslPort>
<EnableSsl>False</EnableSsl>
<LaunchBrowser>True</LaunchBrowser>
<ApiKey>b5009a2dae204dfa8d1ec50ce6fcd425</ApiKey>
<AuthenticationMethod>Forms</AuthenticationMethod>
<Branch>master</Branch>
<SslCertPath></SslCertPath>
<SslCertPassword></SslCertPassword>
<InstanceName>Prowlarr</InstanceName>
<AuthenticationRequired>Enabled</AuthenticationRequired>
</Config>

12
readarr/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# Readarr config directory
config/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

12
rustdeck/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# RustDesk data directory
data/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

View File

@@ -0,0 +1,20 @@
services:
hbbs:
container_name: hbbs
image: rustdesk/rustdesk-server:latest
command: hbbs
volumes:
- ./data:/root
network_mode: "host"
depends_on:
- hbbr
restart: always
hbbr:
container_name: hbbr
image: rustdesk/rustdesk-server:latest
command: hbbr
volumes:
- ./data:/root
network_mode: "host"
restart: always

View File

@@ -0,0 +1,9 @@
<KeyPair>
<Properties>
<Provider Type="1" />
<Container Name="98f3a7e3-0d6e-f432-8a18-e1144b53633f" />
</Properties>
<KeyValue>
<RSAKeyValue><Modulus>j52AJzkDAsnQo9BWmr6YH+pCa12O1RKAZCBfd7PiYeG0CI5+QOY7GOyQaip8T65q5x73ZNUsTz7UfIg1tVcKv2wanPsqInHHfWqgpDKVWSWyhmhIZ+BSENZC+6Kg+VUINXQ+4RMcN6nZiHdgya3WAFhAquzWyjaOqxmSMpQa71yEFma9seNyZtyL9CNKegJk8Y8uShK7nyIoqqo3Enu9tV9ngqtLt3gELFfteUiiqRBJnyEYwy5MUiIqJhFQ3CNX</Modulus><Exponent>AQAB</Exponent><P>qpiGJOPAK5GphOGiP1FvCT1w+cu+mlloXqTPx2wgx3tfqGV2d7qgoEvxEWQVc5LJHTZzYg30F45YvPeFy5uVoZuUIqe0GnkDBTycZqmATwvmQ0mMkVPK0ESDtRGGPLAT</P><Q>14MpLsYJJPpJeYmQAM7hHMnLonOdgyaPxsRvy0W+8veouaWp9HQ0qu+oCBwI8p1HQGixwy9n4ttdBBzA/ddI0fnBRd5XGX2Afpp5eafwVdAj2Fz+4+tLvNcYZK/kEBAt</Q><DP>UEJ78gUYlybrmzHQdHuqgq1eZpddsB5aRRTDEG6lqVQ49+/sYX3zLhcsbmMo2Hv5lH3WoQ4xhZeZ1iWZ0+X56tNYSUmfKUk/i4othvs9+3J8vbFvqbvDUmK5mEmLXyfz</DP><DQ>kB/TBsjBjM0lHfZ1K1UvDsWVPUr8Z5z+QftUmChIjsw5Ng4oHqcoIbisMuAsy7OK1vQtDU9Ctl/lUL66AghbVrEkI8mRjiZ0LDa6TjWVcI4FqshmXZ4ZxGxEj/FhH6zx</DQ><InverseQ>EqXpVtBPwazfXRNqSXd+yFOZ+sdvkU4RX8V+8TwSTwvjbTMc7R8bKCUoz7Rc4MxD04ptI0akD6w51hk2WW0035Z65VHBO9U7lnyQXFyGV1KDPJ9VMNXethZ1oCeX2tIU</InverseQ><D>NRDlgZi3XBhmV6Fr3tH+NAzDbhir5l9nwZeUrw5w3+oeM+szC5gGzjbbRd9c/7RbG/t9PmzmaoG00i8iaVc4SXMQgmDsOL4CEH2Nzh5CwSYEyVVPK9LfgAkrxv9Yq8iXKT3YDVCVqYCK5weJSppYk0rMTQAdDCSLieqVHS7i4bJEW2hevJr4UnUuR0tzxf858VAIkOum456kF1un5dS5af3YooCRTgZUG+8/uu3cNWF49oQaImn5XEwHwNTlRKZB</D></RSAKeyValue>
</KeyValue>
</KeyPair>

18
sonarr/.gitignore vendored Normal file
View File

@@ -0,0 +1,18 @@
# Sonarr data files
*.db
*.db-shm
*.db-wal
*.pid
Backups/
logs/
downloadclient-downloads/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

16
sonarr/config.xml Normal file
View File

@@ -0,0 +1,16 @@
<Config>
<LogLevel>info</LogLevel>
<EnableSsl>False</EnableSsl>
<Port>8989</Port>
<SslPort>9898</SslPort>
<UrlBase></UrlBase>
<BindAddress>*</BindAddress>
<ApiKey>bbd28de6c3714e2c8d3585b504b8b40b</ApiKey>
<AuthenticationMethod>None</AuthenticationMethod>
<UpdateMechanism>Docker</UpdateMechanism>
<LaunchBrowser>True</LaunchBrowser>
<Branch>main</Branch>
<SslCertHash></SslCertHash>
<InstanceName>Sonarr</InstanceName>
<SyslogPort>514</SyslogPort>
</Config>

13
traefik/.gitignore vendored Normal file
View File

@@ -0,0 +1,13 @@
# Traefik data directories
log/
acme.json
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

14
transmission/.gitignore vendored Normal file
View File

@@ -0,0 +1,14 @@
# Transmission config and data directories
config/
downloads/
watch/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

12
vaultwarden/.gitignore vendored Normal file
View File

@@ -0,0 +1,12 @@
# Vaultwarden data directory
vw-data/
# Environment files
.env
# Logs
*.log
# Temporary files
*.tmp
*.temp

View File

@@ -0,0 +1,21 @@
version: '3'
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: always
environment:
- WEBSOCKET_ENABLED=true # Enable WebSocket notifications.
- ADMIN_TOKEN= $$argon2id$$v=19$$m=65540,t=3,p=4$$SnVJQXUvV2Y2S0lBQnR1OFNOREF6MDJUNlQxUXBrdWxYL0R6NzZTNEZVUT0$$n30ADvI1fjjmt1sH1E5bL4QfKa/lVvzBIVdKTTsLGdE
volumes:
- ./vw-data:/data
labels:
- "traefik.enable=true"
- "traefik.http.routers.bitwarden_unkrig_dev.rule=Host(`bitwarden.unkrig.dev`)"
- "traefik.http.routers.bitwarden_unkrig_dev.entrypoints=websecure"
- "traefik.http.routers.bitwarden_unkrig_dev.tls.certresolver=variomedia"
networks:
default:
external:
name: traefik