add docker compose files
This commit is contained in:
80
docker-compose.authentik.yml
Normal file
80
docker-compose.authentik.yml
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
services:
|
||||||
|
authentik-postgresql:
|
||||||
|
image: docker.io/library/postgres:16-alpine
|
||||||
|
container_name: authentik-postgresql
|
||||||
|
restart: unless-stopped
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}"]
|
||||||
|
start_period: 20s
|
||||||
|
interval: 30s
|
||||||
|
retries: 5
|
||||||
|
timeout: 5s
|
||||||
|
volumes:
|
||||||
|
- /opt/authentik/database:/var/lib/postgresql/data
|
||||||
|
environment:
|
||||||
|
POSTGRES_PASSWORD: ${PG_PASS}
|
||||||
|
POSTGRES_USER: ${PG_USER:-authentik}
|
||||||
|
POSTGRES_DB: ${PG_DB:-authentik}
|
||||||
|
env_file:
|
||||||
|
- /opt/authentik/.env
|
||||||
|
|
||||||
|
authentik-redis:
|
||||||
|
image: docker.io/library/redis:alpine
|
||||||
|
container_name: authentik-redis
|
||||||
|
command: --save 60 1 --loglevel warning
|
||||||
|
restart: unless-stopped
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "redis-cli ping | grep PONG"]
|
||||||
|
start_period: 20s
|
||||||
|
interval: 30s
|
||||||
|
retries: 5
|
||||||
|
timeout: 3s
|
||||||
|
volumes:
|
||||||
|
- /opt/authentik/redis:/data
|
||||||
|
|
||||||
|
authentik-server:
|
||||||
|
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2024.10.1}
|
||||||
|
container_name: authentik-server
|
||||||
|
restart: unless-stopped
|
||||||
|
command: server
|
||||||
|
environment:
|
||||||
|
AUTHENTIK_SECRET_KEY: ${AUTHENTIK_SECRET_KEY}
|
||||||
|
AUTHENTIK_REDIS__HOST: authentik-redis
|
||||||
|
AUTHENTIK_POSTGRESQL__HOST: authentik-postgresql
|
||||||
|
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
|
||||||
|
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
|
||||||
|
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
|
||||||
|
volumes:
|
||||||
|
- /opt/authentik/media:/media
|
||||||
|
- /opt/authentik/templates:/templates
|
||||||
|
env_file:
|
||||||
|
- /opt/authentik/.env
|
||||||
|
ports:
|
||||||
|
- "${COMPOSE_PORT_HTTP:-9000}:9000"
|
||||||
|
- "${COMPOSE_PORT_HTTPS:-9443}:9443"
|
||||||
|
depends_on:
|
||||||
|
- authentik-postgresql
|
||||||
|
- authentik-redis
|
||||||
|
extra_hosts:
|
||||||
|
- host:192.168.2.200
|
||||||
|
|
||||||
|
authentik-worker:
|
||||||
|
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2024.10.1}
|
||||||
|
container_name: authentik-worker
|
||||||
|
restart: unless-stopped
|
||||||
|
command: worker
|
||||||
|
environment:
|
||||||
|
AUTHENTIK_REDIS__HOST: authentik-redis
|
||||||
|
AUTHENTIK_POSTGRESQL__HOST: authentik-postgresql
|
||||||
|
AUTHENTIK_POSTGRESQL__USER: ${PG_USER:-authentik}
|
||||||
|
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
|
||||||
|
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
|
||||||
|
volumes:
|
||||||
|
- /opt/authentik/media:/media
|
||||||
|
- /opt/authentik/certs:/certs
|
||||||
|
- /opt/authentik/templates:/templates
|
||||||
|
env_file:
|
||||||
|
- /opt/authentik/.env
|
||||||
|
depends_on:
|
||||||
|
- authentik-postgresql
|
||||||
|
- authentik-redis
|
||||||
17
docker-compose.bazarr.yml
Normal file
17
docker-compose.bazarr.yml
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
services:
|
||||||
|
bazarr:
|
||||||
|
container_name: bazarr
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=Europe/Amsterdam
|
||||||
|
extra_hosts:
|
||||||
|
- host:192.168.2.200
|
||||||
|
image: linuxserver/bazarr:1.4.2
|
||||||
|
ports:
|
||||||
|
- 16767:6767
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/bazarr:/config
|
||||||
|
- /mnt/yotta/krypton/Movies:/movies
|
||||||
|
- /mnt/yotta/krypton/Shows:/tv
|
||||||
20
docker-compose.borgmatic.yml
Normal file
20
docker-compose.borgmatic.yml
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
services:
|
||||||
|
borgmatic:
|
||||||
|
container_name: borgmatic
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/Amsterdam
|
||||||
|
- BORG_UNKNOWN_UNENCRYPTED_REPO_ACCESS_IS_OK=yes
|
||||||
|
image: b3vis/borgmatic:v1.1.10-1.4.21
|
||||||
|
privileged: true
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/borgmatic/config/crontab.txt:/etc/borgmatic.d/crontab.txt
|
||||||
|
- /opt/borgmatic/config:/config
|
||||||
|
- /opt/borgmatic/keys:/keys
|
||||||
|
- /opt/borgmatic/cache:/cache
|
||||||
|
- /opt/borgmatic/log:/log
|
||||||
|
- /root/.ssh:/root/.ssh
|
||||||
|
- /mnt/yotta/xenon/borg:/repo
|
||||||
|
- /mnt/yotta/xenon/manual:/manual
|
||||||
|
- /:/shuttle
|
||||||
|
- /dev/fuse:/dev/fuse
|
||||||
21
docker-compose.caddy.yml
Normal file
21
docker-compose.caddy.yml
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
services:
|
||||||
|
caddy:
|
||||||
|
build:
|
||||||
|
context: /opt/caddy/
|
||||||
|
container_name: caddy
|
||||||
|
depends_on:
|
||||||
|
- nginx
|
||||||
|
environment:
|
||||||
|
- AWS_ACCESS_KEY_ID="${AWS_ACCESS_KEY_ID:?}"
|
||||||
|
- AWS_SECRET_ACCESS_KEY="${AWS_SECRET_ACCESS_KEY:?}"
|
||||||
|
image: caddy
|
||||||
|
links:
|
||||||
|
- nginx
|
||||||
|
ports:
|
||||||
|
- 444:443
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/caddy/Caddyfile:/etc/caddy/Caddyfile
|
||||||
|
- /opt/caddy/data:/data
|
||||||
|
extra_hosts:
|
||||||
|
- host:192.168.2.200
|
||||||
20
docker-compose.dns-ad-blocker.yml
Normal file
20
docker-compose.dns-ad-blocker.yml
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
services:
|
||||||
|
dns-ad-blocker:
|
||||||
|
container_name: dns-ad-blocker
|
||||||
|
environment:
|
||||||
|
- AUTO_UPDATE=1
|
||||||
|
- BRANCH=master
|
||||||
|
- DNSCRYPT=1
|
||||||
|
- DNSCRYPT_PROVIDER_NAME=2.dnscrypt-cert.ns0.dnscrypt.nl
|
||||||
|
- DNSCRYPT_RESOLVER_ADDR=45.76.35.212
|
||||||
|
- DNSCRYPT_PROVIDER_KEY=4C84:FB8C:0511:5DFA:5F97:C5ED:0329:1370:C78A:BCD6:4E15:DD53:AB08:DE72:FB84:4ACA
|
||||||
|
- WHITELIST=api.segment.io,www.googleapis.com,analytics.google.com
|
||||||
|
image: oznu/dns-ad-blocker:latest
|
||||||
|
ports:
|
||||||
|
- 192.168.2.201:53:53/udp
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/dns-ad-blocker/config:/config
|
||||||
|
- /opt/dns-ad-blocker/run:/etc/services.d/dnsmasq/run
|
||||||
|
- /opt/dns-ad-blocker/var/log:/var/log
|
||||||
|
- /opt/dns-ad-blocker/dnsmasq.hosts:/etc/dnsmasq.hosts
|
||||||
10
docker-compose.droppy.yml
Normal file
10
docker-compose.droppy.yml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
services:
|
||||||
|
droppy:
|
||||||
|
container_name: droppy
|
||||||
|
image: silverwind/droppy:11.1.0
|
||||||
|
ports:
|
||||||
|
- 8989:8989
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/droppy:/config
|
||||||
|
- /media/scratch/droppy:/files
|
||||||
29
docker-compose.dsmr.yml
Normal file
29
docker-compose.dsmr.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
services:
|
||||||
|
dsmr:
|
||||||
|
container_name: dsmr
|
||||||
|
depends_on:
|
||||||
|
- dsmrdb
|
||||||
|
- influxdb
|
||||||
|
environment:
|
||||||
|
- DSMRREADER_ADMIN_USER="${DSMRREADER_USER:?}"
|
||||||
|
- DSMRREADER_ADMIN_PASSWORD="${DSMRREADER_PASSWORD:?}"
|
||||||
|
image: xirixiz/dsmr-reader-docker:5.10.3-2023.04.02
|
||||||
|
links:
|
||||||
|
- dsmrdb:dsmrreader
|
||||||
|
ports:
|
||||||
|
- 8888:80
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/dsmr/backups:/home/dsmr/app/backups
|
||||||
|
dsmrdb:
|
||||||
|
container_name: dsmrdb
|
||||||
|
environment:
|
||||||
|
- POSTGRES_DB="${DSMRDB_DATABASE:?}"
|
||||||
|
- POSTGRES_USER="${DSMRDB_USER:?}"
|
||||||
|
- POSTGRES_PASSWORD="${DSMRDB_PASSWORD:?}"
|
||||||
|
image: postgres:13.7
|
||||||
|
ports:
|
||||||
|
- 5432:5432
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/dsmr/data:/var/lib/postgresql/data
|
||||||
10
docker-compose.esphome.yml
Normal file
10
docker-compose.esphome.yml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
services:
|
||||||
|
esphome:
|
||||||
|
container_name: esphome
|
||||||
|
image: esphome/esphome:2022.12.8
|
||||||
|
network_mode: host
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/esphome:/config:rw
|
||||||
|
- /opt/esphome/log:/log:rw
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
14
docker-compose.filebrowser.yml
Normal file
14
docker-compose.filebrowser.yml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
services:
|
||||||
|
filebrowser:
|
||||||
|
container_name: filebrowser
|
||||||
|
image: filebrowser/filebrowser:v2.1.0
|
||||||
|
ports:
|
||||||
|
- 8002:80
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/filebrowser/.filebrowser.json:/.filebrowser.json
|
||||||
|
- /opt/filebrowser/database.db:/database.db
|
||||||
|
- /mnt/yotta/helium/personal:/host/media/Personal
|
||||||
|
- /mnt/yotta/helium/shared:/host/media/Shared
|
||||||
|
- /mnt/yotta/neon:/host/media/Other
|
||||||
|
- /mnt/yotta/krypton:/host/media/Video
|
||||||
9
docker-compose.grafana.yml
Normal file
9
docker-compose.grafana.yml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
services:
|
||||||
|
grafana:
|
||||||
|
container_name: grafana
|
||||||
|
image: grafana/grafana:9.0.2
|
||||||
|
ports:
|
||||||
|
- 3333:3000
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/grafana:/var/lib/grafana
|
||||||
14
docker-compose.homarr.yml
Normal file
14
docker-compose.homarr.yml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
services:
|
||||||
|
homarr:
|
||||||
|
container_name: homarr
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/Amsterdam
|
||||||
|
image: ghcr.io/ajnart/homarr:0.15.2
|
||||||
|
ports:
|
||||||
|
- 17575:7575
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/homarr/data:/data
|
||||||
|
- /opt/homarr/configs:/app/data/configs
|
||||||
|
- /opt/homarr/icons:/app/public/icons
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
10
docker-compose.homeassistant.yml
Normal file
10
docker-compose.homeassistant.yml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
services:
|
||||||
|
homeassistant:
|
||||||
|
container_name: homeassistant
|
||||||
|
image: homeassistant/home-assistant:2024.10
|
||||||
|
network_mode: host
|
||||||
|
privileged: true
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/homeassistant:/config
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
10
docker-compose.influxdb.yml
Normal file
10
docker-compose.influxdb.yml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
services:
|
||||||
|
influxdb:
|
||||||
|
container_name: influxdb
|
||||||
|
image: influxdb:2.3.0
|
||||||
|
ports:
|
||||||
|
- 8086:8086
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /mnt/mezzo/scratch/influxdb:/var/lib/influxdb2
|
||||||
|
- /opt/gw2pvo:/opt/gw2pvo
|
||||||
16
docker-compose.jackett.yml
Normal file
16
docker-compose.jackett.yml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
services:
|
||||||
|
jackett:
|
||||||
|
container_name: jackett
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=Europe/Amsterdam
|
||||||
|
external_links:
|
||||||
|
- transmission
|
||||||
|
- qbittorrent
|
||||||
|
image: linuxserver/jackett:0.20.216
|
||||||
|
ports:
|
||||||
|
- 9117:9117
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/jackett:/config
|
||||||
19
docker-compose.jellyfin.yml
Normal file
19
docker-compose.jellyfin.yml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
services:
|
||||||
|
jellyfin:
|
||||||
|
container_name: jellyfin
|
||||||
|
devices:
|
||||||
|
- /dev/dri/renderD128:/dev/dri/renderD128
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=Europe/Amsterdam
|
||||||
|
image: linuxserver/jellyfin:10.10.1
|
||||||
|
ports:
|
||||||
|
- 8097:8097
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/jellyfin/config:/config
|
||||||
|
- /opt/cache:/cache
|
||||||
|
- /mnt/yotta/krypton/Movies:/host/srv/movies
|
||||||
|
- /mnt/yotta/krypton/Shows:/host/srv/shows
|
||||||
|
- /mnt/yotta/neon/Music/Albums:/host/srv/music
|
||||||
11
docker-compose.jellyseerr.yml
Normal file
11
docker-compose.jellyseerr.yml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
services:
|
||||||
|
jellyseerr:
|
||||||
|
container_name: jellyseerr
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/Amsterdam
|
||||||
|
image: fallenbagel/jellyseerr:1.5.0
|
||||||
|
ports:
|
||||||
|
- 15055:5055
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/jellyseerr:/app/config
|
||||||
10
docker-compose.lighttpd.yml
Normal file
10
docker-compose.lighttpd.yml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
services:
|
||||||
|
lighttpd:
|
||||||
|
container_name: lighttpd
|
||||||
|
image: sebp/lighttpd:1.4.64-r0
|
||||||
|
ports:
|
||||||
|
- 80:80
|
||||||
|
restart: unless-stopped
|
||||||
|
tty: true
|
||||||
|
volumes:
|
||||||
|
- /home/user/www:/var/www/localhost/htdocs
|
||||||
21
docker-compose.minio.yml
Normal file
21
docker-compose.minio.yml
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
services:
|
||||||
|
minio:
|
||||||
|
command: server /data --console-address ":9001"
|
||||||
|
container_name: minio
|
||||||
|
environment:
|
||||||
|
- MINIO_ROOT_USER="${MINIO_ROOT_USER:?}
|
||||||
|
- MINIO_ROOT_PASSWORD="${MINIO_ROOT_PASSWORD:?}
|
||||||
|
healthcheck:
|
||||||
|
interval: 30s
|
||||||
|
retries: 3
|
||||||
|
test:
|
||||||
|
- CMD
|
||||||
|
- curl
|
||||||
|
- -f
|
||||||
|
- http://localhost:9000/minio/health/live
|
||||||
|
timeout: 20s
|
||||||
|
image: minio/minio
|
||||||
|
ports:
|
||||||
|
- 9000:9000
|
||||||
|
- 9001:9001
|
||||||
|
restart: unless-stopped
|
||||||
12
docker-compose.mosquitto.yml
Normal file
12
docker-compose.mosquitto.yml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
services:
|
||||||
|
mosquitto:
|
||||||
|
container_name: mosquitto
|
||||||
|
image: eclipse-mosquitto:2.0.15
|
||||||
|
ports:
|
||||||
|
- 1883:1883
|
||||||
|
- 1884:1884
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/mosquitto/config:/mosquitto/config
|
||||||
|
- /opt/mosquitto/data:/mosquitto/data
|
||||||
|
- /opt/mosquitto/log:/mosquitto/log
|
||||||
15
docker-compose.nginx.yml
Normal file
15
docker-compose.nginx.yml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
services:
|
||||||
|
nginx:
|
||||||
|
container_name: nginx
|
||||||
|
extra_hosts:
|
||||||
|
- host:192.168.2.200
|
||||||
|
image: nginx:1.25.4
|
||||||
|
ports:
|
||||||
|
- 20080:80
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/nginx/etc/.htpasswd:/host/etc/.htpasswd
|
||||||
|
- /opt/nginx/etc/nginx/conf:/etc/nginx/conf
|
||||||
|
- /opt/nginx/etc/nginx/conf.d:/etc/nginx/conf.d
|
||||||
|
- /opt/nginx/etc/nginx/nginx.conf:/etc/nginx/nginx.conf
|
||||||
|
- /opt/nginx/var/log/nginx:/var/log/nginx
|
||||||
16
docker-compose.openvpn-server.yml
Normal file
16
docker-compose.openvpn-server.yml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
services:
|
||||||
|
openvpn-server:
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
container_name: openvpn-server
|
||||||
|
extra_hosts:
|
||||||
|
- host:192.168.2.200
|
||||||
|
image: kylemanna/openvpn:2.4
|
||||||
|
network_mode: bridge
|
||||||
|
ports:
|
||||||
|
- 443:443
|
||||||
|
privileged: true
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/openvpn-server:/etc/openvpn
|
||||||
|
- /opt/openvpn-server/logrotate.d/openvpn:/etc/logrotate.d/openvpn
|
||||||
13
docker-compose.pgadmin.yml
Normal file
13
docker-compose.pgadmin.yml
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
services:
|
||||||
|
pgadmin:
|
||||||
|
container_name: pgadmin
|
||||||
|
environment:
|
||||||
|
- PGADMIN_DEFAULT_EMAIL="${PGADMIN_EMAIL:?}"
|
||||||
|
- PGADMIN_DEFAULT_PASSWORD=${PGADMIN_PASSWORD:?}"
|
||||||
|
image: dpage/pgadmin4:7.5
|
||||||
|
ports:
|
||||||
|
- 5050:80
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/pgadmin/var:/var/lib/pgadmin
|
||||||
|
- /opt/pgadmin/log:/var/log/pgadmin
|
||||||
55
docker-compose.photoprism.yml
Normal file
55
docker-compose.photoprism.yml
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
services:
|
||||||
|
photoprism:
|
||||||
|
container_name: photoprism
|
||||||
|
devices:
|
||||||
|
- /dev/dri:/dev/dri
|
||||||
|
environment:
|
||||||
|
- PHOTOPRISM_ADMIN_PASSWORD="${PHOTOPRISM_ADMIN_PASSWORD:?}"
|
||||||
|
- PHOTOPRISM_AUTH_MODE=password
|
||||||
|
- PHOTOPRISM_SITE_URL=http://localhost:2342/
|
||||||
|
- PHOTOPRISM_ORIGINALS_LIMIT=5000
|
||||||
|
- PHOTOPRISM_HTTP_COMPRESSION=gzip
|
||||||
|
- PHOTOPRISM_LOG_LEVEL=info
|
||||||
|
- PHOTOPRISM_READONLY=true
|
||||||
|
- PHOTOPRISM_EXPERIMENTAL=false
|
||||||
|
- PHOTOPRISM_DISABLE_CHOWN=true
|
||||||
|
- PHOTOPRISM_DISABLE_WEBDAV=true
|
||||||
|
- PHOTOPRISM_DISABLE_SETTINGS=false
|
||||||
|
- PHOTOPRISM_DISABLE_TENSORFLOW=false
|
||||||
|
- PHOTOPRISM_DISABLE_FACES=false
|
||||||
|
- PHOTOPRISM_DISABLE_CLASSIFICATION=false
|
||||||
|
- PHOTOPRISM_DISABLE_RAW=true
|
||||||
|
- PHOTOPRISM_RAW_PRESETS=false
|
||||||
|
- PHOTOPRISM_JPEG_QUALITY=85
|
||||||
|
- PHOTOPRISM_DETECT_NSFW=false
|
||||||
|
- PHOTOPRISM_UPLOAD_NSFW=true
|
||||||
|
- PHOTOPRISM_DATABASE_DRIVER=sqlite
|
||||||
|
- PHOTOPRISM_UID=1000
|
||||||
|
- PHOTOPRISM_GID=1000
|
||||||
|
image: photoprism/photoprism:230719
|
||||||
|
ports:
|
||||||
|
- 2342:2342
|
||||||
|
restart: unless-stopped
|
||||||
|
security_opt:
|
||||||
|
- seccomp:unconfined
|
||||||
|
- apparmor:unconfined
|
||||||
|
volumes:
|
||||||
|
- /opt/photoprism:/photoprism/storage
|
||||||
|
- /opt/photoprism/originals:/photoprism/originals/
|
||||||
|
- /mnt/yotta/radon/photoprism:/photoprism/storage/cache
|
||||||
|
- /mnt/yotta/helium/shared/Photographs/Vakantie/Peter + Monique + Rik + Bram/Denemarken
|
||||||
|
2022:/photoprism/originals/Shared/Vakantie/Peter + Monique + Rik + Bram/Denemarken
|
||||||
|
2022
|
||||||
|
- /mnt/yotta/helium/shared/Photographs/Vakantie/Familie/Ierland 2022:/photoprism/originals/Shared/Vakantie/Familie/Ierland
|
||||||
|
2022
|
||||||
|
- /mnt/yotta/helium/shared/Photographs/Vakantie/Peter + Monique + Rik + Bram/Schotland
|
||||||
|
2022:/photoprism/originals/Shared/Vakantie/Peter + Monique + Rik + Bram/Schotland
|
||||||
|
2022
|
||||||
|
- /mnt/yotta/helium/shared/Photographs/Vakantie/Bram + Rik + Sanne/Kroatie
|
||||||
|
2023:/photoprism/originals/Shared/Vakantie/Bram + Rik + Sanne/Kroatie
|
||||||
|
2023
|
||||||
|
- /mnt/yotta/helium/shared/Photographs/Vakantie/Peter + Monique + Rik + Bram/Zweden
|
||||||
|
2023:/photoprism/originals/Vakantie/Peter + Monique + Rik + Bram/Zweden
|
||||||
|
2023
|
||||||
|
- /mnt/yotta/helium/shared/Photographs/Vakantie/Bram + Rik/Athene 2023:/photoprism/originals/Vakantie/Bram
|
||||||
|
+ Rik/Athene 2023
|
||||||
13
docker-compose.postgis.yml
Normal file
13
docker-compose.postgis.yml
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
services:
|
||||||
|
postgis:
|
||||||
|
container_name: postgis
|
||||||
|
environment:
|
||||||
|
- POSTGRES_DB="${POSTGIS_DATABASE:?}"
|
||||||
|
- POSTGRES_USER="${POSTGIS_USER:?}"
|
||||||
|
- POSTGRES_PASSWORD="${POSTGIS_PASSWORD:?}"
|
||||||
|
image: postgis/postgis:14-3.2
|
||||||
|
ports:
|
||||||
|
- 7654:5432
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/postgis:/var/lib/postgresql/data
|
||||||
16
docker-compose.qbittorrent.yml
Normal file
16
docker-compose.qbittorrent.yml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
services:
|
||||||
|
qbittorrent:
|
||||||
|
container_name: qbittorrent
|
||||||
|
image: linuxserver/qbittorrent:5.0.1
|
||||||
|
depends_on:
|
||||||
|
- surfshark
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=Europe/Amsterdam
|
||||||
|
- WEBUI_PORT=9092
|
||||||
|
network_mode: service:surfshark
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/qbittorrent:/config
|
||||||
|
- /media/scratch/qbittorrent:/downloads
|
||||||
22
docker-compose.radarr.yml
Normal file
22
docker-compose.radarr.yml
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
services:
|
||||||
|
radarr:
|
||||||
|
container_name: radarr
|
||||||
|
image: linuxserver/radarr:5.14.0
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=Europe/Amsterdam
|
||||||
|
external_links:
|
||||||
|
- transmission
|
||||||
|
- qbittorrent
|
||||||
|
extra_hosts:
|
||||||
|
- transmission:192.168.2.200
|
||||||
|
- qbittorrent:192.168.2.200
|
||||||
|
ports:
|
||||||
|
- 17878:7878
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/radarr:/config
|
||||||
|
- /media/scratch/transmission:/downloads/transmission
|
||||||
|
- /media/scratch/qbittorrent:/downloads/qbittorrent
|
||||||
|
- /mnt/yotta/krypton/Movies:/movies
|
||||||
14
docker-compose.rsnapshot.yml
Normal file
14
docker-compose.rsnapshot.yml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
services:
|
||||||
|
rsnapshot:
|
||||||
|
container_name: rsnapshot
|
||||||
|
image: linuxserver/rsnapshot:1.4.4
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/rsnapshot/etc:/etc/rsnapshot
|
||||||
|
- /opt/rsnapshot/var/log:/var/log
|
||||||
|
- /opt/rsnapshot/var/run:/var/run
|
||||||
|
- /opt/rsnapshot/var/spool:/var/spool
|
||||||
|
- /opt/rsnapshot/usr:/host/usr
|
||||||
|
- /opt/host_aliases:/host/etc/host_aliases
|
||||||
|
- /mnt/yotta/xenon/rsnapshot:/host/scratch
|
||||||
|
- /root/.ssh:/root/.ssh
|
||||||
14
docker-compose.seafile.yml
Normal file
14
docker-compose.seafile.yml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
services:
|
||||||
|
seafile:
|
||||||
|
container_name: seafile
|
||||||
|
environment:
|
||||||
|
- MODE=autorun
|
||||||
|
image: gronis/seafile:10.0.1
|
||||||
|
ports:
|
||||||
|
- 8100:8000
|
||||||
|
- 8180:8080
|
||||||
|
- 8182:8082
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/seafile:/seafile
|
||||||
|
- /media/sync/seafile:/seafile/seafile-data
|
||||||
19
docker-compose.sonarr.yml
Normal file
19
docker-compose.sonarr.yml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
services:
|
||||||
|
sonarr:
|
||||||
|
image: linuxserver/sonarr:4.0.10
|
||||||
|
container_name: sonarr
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=Europe/Amsterdam
|
||||||
|
external_links:
|
||||||
|
- transmission
|
||||||
|
extra_hosts:
|
||||||
|
- transmission:192.168.2.200
|
||||||
|
ports:
|
||||||
|
- 18989:8989
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/sonarr:/config
|
||||||
|
- /media/scratch/transmission:/downloads
|
||||||
|
- /mnt/yotta/krypton/Shows:/tv
|
||||||
24
docker-compose.surfshark.yml
Normal file
24
docker-compose.surfshark.yml
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
services:
|
||||||
|
surfshark:
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
container_name: surfshark
|
||||||
|
devices:
|
||||||
|
- /dev/net/tun
|
||||||
|
dns:
|
||||||
|
- 1.1.1.1
|
||||||
|
environment:
|
||||||
|
- SURFSHARK_USER=${SURFSHARK_USER:?}
|
||||||
|
- SURFSHARK_PASSWORD=${SURFSHARK_PASSWORD:?}
|
||||||
|
- SURFSHARK_COUNTRY=nl
|
||||||
|
- SURFSHARK_CITY=ams
|
||||||
|
- CONNECTION_TYPE=udp
|
||||||
|
- LAN_NETWORK=
|
||||||
|
image: ilteoood/docker-surfshark:1.7.2
|
||||||
|
ports:
|
||||||
|
- 1080:1080
|
||||||
|
- 9091:9091
|
||||||
|
- 9092:9092
|
||||||
|
- 6881:6881
|
||||||
|
- 6881:6881/udp
|
||||||
|
restart: unless-stopped
|
||||||
12
docker-compose.timescaledb.yml
Normal file
12
docker-compose.timescaledb.yml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
services:
|
||||||
|
timescaledb:
|
||||||
|
container_name: timescaledb
|
||||||
|
environment:
|
||||||
|
- POSTGRES_USER="${TIMESCALEDB_USER:?}"
|
||||||
|
- POSTGRES_PASSWORD="${TIMESCALEDB_PASSWORD:?}"
|
||||||
|
image: timescale/timescaledb:2.7.1-pg14
|
||||||
|
ports:
|
||||||
|
- 6543:5432
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /mnt/mezzo/scratch/timescaledb:/var/lib/postgresql/data
|
||||||
16
docker-compose.transmission.yml
Normal file
16
docker-compose.transmission.yml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
services:
|
||||||
|
transmission:
|
||||||
|
container_name: transmission
|
||||||
|
image: linuxserver/transmission:4.0.6
|
||||||
|
depends_on:
|
||||||
|
- surfshark
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=Europe/Amsterdam
|
||||||
|
network_mode: service:surfshark
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /opt/transmission:/config
|
||||||
|
- /media/scratch/torrents:/watch
|
||||||
|
- /media/scratch/transmission:/downloads
|
||||||
58
docker-compose.vouch.yml
Normal file
58
docker-compose.vouch.yml
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
services:
|
||||||
|
vouch:
|
||||||
|
image: quay.io/vouch/vouch-proxy:alpine-0.41.0
|
||||||
|
container_name: vouch
|
||||||
|
ports:
|
||||||
|
- 9090:9090
|
||||||
|
environment:
|
||||||
|
# Google
|
||||||
|
# - OAUTH_PROVIDER=google
|
||||||
|
# - OAUTH_CLIENT_ID=889676430308-ivr6b4fmneivn70ri2ugm1gkbgoh5qdq.apps.googleusercontent.com
|
||||||
|
# - OAUTH_CLIENT_SECRET=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
|
||||||
|
# - https://www.googleapis.com/oauth2/v3/userinfo
|
||||||
|
|
||||||
|
# Google
|
||||||
|
# - OAUTH_PROVIDER=oidc
|
||||||
|
# - OAUTH_CLIENT_ID=889676430308-ivr6b4fmneivn70ri2ugm1gkbgoh5qdq.apps.googleusercontent.com
|
||||||
|
# - OAUTH_CLIENT_SECRET=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
|
||||||
|
# - OAUTH_AUTH_URL=https://accounts.google.com/o/oauth2/auth
|
||||||
|
# - OAUTH_TOKEN_URL=https://accounts.google.com/o/oauth2/token
|
||||||
|
# - OAUTH_USER_INFO_URL=https://www.googleapis.com/oauth2/v3/userinfo
|
||||||
|
|
||||||
|
# Amazon
|
||||||
|
# - OAUTH_PROVIDER=oidc
|
||||||
|
# - OAUTH_CLIENT_ID=793k18vvmiooosv5j4dd0bkqi
|
||||||
|
# - OAUTH_CLIENT_SECRET=ccpsr589kufadbmi7ac6kgi3gaftc4cqkm3pi627tsidmbsk1lj
|
||||||
|
# - OAUTH_AUTH_URL=https://veenboer.auth.eu-central-1.amazoncognito.com/oauth2/authorize
|
||||||
|
# - OAUTH_TOKEN_URL=https://veenboer.auth.eu-central-1.amazoncognito.com/oauth2/token
|
||||||
|
# - OAUTH_USER_INFO_URL=https://veenboer.auth.eu-central-1.amazoncognito.com/oauth2/userInfo
|
||||||
|
|
||||||
|
# Microsoft
|
||||||
|
# - OAUTH_PROVIDER=oidc
|
||||||
|
# - OAUTH_CLIENT_ID=2483d0ed-95a1-4ca1-ae72-a79ca6defd96
|
||||||
|
# - OAUTH_CLIENT_SECRET=x8V8Q~vklpp75~xwMRzAuNa4NQ7K8gNEAAsx-cTZ
|
||||||
|
# - OAUTH_AUTH_URL=https://login.microsoftonline.com/common/oauth2/v2.0/authorize
|
||||||
|
# - OAUTH_TOKEN_URL=https://login.microsoftonline.com/common/oauth2/v2.0/token
|
||||||
|
# - OAUTH_USER_INFO_URL=https://graph.microsoft.com/oidc/userinfo
|
||||||
|
|
||||||
|
# Authentik
|
||||||
|
- OAUTH_PROVIDER=oidc
|
||||||
|
- OAUTH_CLIENT_ID=MJJ44TzracJ8J24xVsUvO12KvAbzxiev9G0t9sYl
|
||||||
|
- OAUTH_CLIENT_SECRET=vrUGfNfqzooKujOyvTLDZffOTakEgNeCIlILaBU2aF9QtaDHJWaYVY3MLGlkF2jlFFn4W0a1eSJcZpJMxojO4i7U6b9CqbdTr5Al2LvK3FQnFbViUn2MN0qKibv8VVO1
|
||||||
|
- OAUTH_AUTH_URL=https://authentik.rik.veenboer.xyz/application/o/authorize/
|
||||||
|
- OAUTH_TOKEN_URL=https://authentik.rik.veenboer.xyz/application/o/token/
|
||||||
|
- OAUTH_USER_INFO_URL=https://authentik.rik.veenboer.xyz/application/o/userinfo/
|
||||||
|
|
||||||
|
# General
|
||||||
|
- OAUTH_CALLBACK_URL=https://vouch.rik.veenboer.xyz/auth
|
||||||
|
- OAUTH_SCOPES=openid,profile,email
|
||||||
|
- VOUCH_COOKIE_DOMAIN=veenboer.xyz
|
||||||
|
- VOUCH_ALLOWALLUSERS=true
|
||||||
|
- VOUCH_HEADERS_CLAIMS=email,preferred_username
|
||||||
|
|
||||||
|
# Unused
|
||||||
|
# - VOUCH_COOKIE_SECURE=false
|
||||||
|
# - VOUCH_HEADERS_CLAIMS=sub,name,email
|
||||||
|
# - OAUTH_CLAIMS=sub,name,email
|
||||||
|
# - VOUCH_HEADERS_IDTOKEN=X-Vouch-IdP-IdToken
|
||||||
|
restart: unless-stopped
|
||||||
57
docker-compose.yml
Normal file
57
docker-compose.yml
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
include:
|
||||||
|
# Web
|
||||||
|
- docker-compose.caddy.yml
|
||||||
|
- docker-compose.lighttpd.yml
|
||||||
|
- docker-compose.nginx.yml
|
||||||
|
|
||||||
|
# Authentication
|
||||||
|
- docker-compose.authentik.yml
|
||||||
|
- docker-compose.vouch.yml
|
||||||
|
|
||||||
|
# Other
|
||||||
|
- docker-compose.homarr.yml
|
||||||
|
- docker-compose.homeassistant.yml
|
||||||
|
- docker-compose.grafana.yml
|
||||||
|
- docker-compose.photoprism.yml
|
||||||
|
|
||||||
|
# Download
|
||||||
|
- docker-compose.jackett.yml
|
||||||
|
- docker-compose.transmission.yml
|
||||||
|
- docker-compose.qbittorrent.yml
|
||||||
|
|
||||||
|
# Media
|
||||||
|
- docker-compose.radarr.yml
|
||||||
|
- docker-compose.sonarr.yml
|
||||||
|
- docker-compose.bazarr.yml
|
||||||
|
- docker-compose.jellyseerr.yml
|
||||||
|
- docker-compose.jellyfin.yml
|
||||||
|
|
||||||
|
# Networking
|
||||||
|
- docker-compose.surfshark.yml
|
||||||
|
- docker-compose.openvpn-server.yml
|
||||||
|
- docker-compose.dns-ad-blocker.yml
|
||||||
|
|
||||||
|
# Backup
|
||||||
|
- docker-compose.rsnapshot.yml
|
||||||
|
- docker-compose.borgmatic.yml
|
||||||
|
|
||||||
|
# Sensors
|
||||||
|
- docker-compose.dsmr.yml
|
||||||
|
- docker-compose.esphome.yml
|
||||||
|
- docker-compose.mosquitto.yml
|
||||||
|
|
||||||
|
# Storage
|
||||||
|
- docker-compose.seafile.yml
|
||||||
|
- docker-compose.filebrowser.yml
|
||||||
|
- docker-compose.droppy.yml
|
||||||
|
- docker-compose.minio.yml
|
||||||
|
|
||||||
|
# Database
|
||||||
|
- docker-compose.pgadmin.yml
|
||||||
|
- docker-compose.postgis.yml
|
||||||
|
- docker-compose.timescaledb.yml
|
||||||
|
- docker-compose.influxdb.yml
|
||||||
|
|
||||||
|
networks:
|
||||||
|
vpn:
|
||||||
|
driver: bridge
|
||||||
Reference in New Issue
Block a user