Signed-off-by: Menno van Leeuwen <menno@vleeuwen.me>
This commit is contained in:
Menno van Leeuwen 2025-02-07 13:09:16 +01:00
parent c4685066f8
commit e9e3bcd53f
18 changed files with 158 additions and 90 deletions

6
.gitignore vendored
View File

@ -1,2 +1,8 @@
**/config/
**/data/
.env
comfyui/config/
comfyui/.git/
comfyui/build

View File

@ -109,6 +109,8 @@ services:
- PGID=1000
- TZ=Europe/Amsterdam
- JELLYFIN_PublishedServerUrl=https://jellyfin.vleeuwen.me
- NVIDIA_VISIBLE_DEVICES=all
- NVIDIA_DRIVER_CAPABILITIES=compute,video,utility
volumes:
- ./data/jellyfin-config:/config
- /mnt:/mnt
@ -116,15 +118,24 @@ services:
- 8096:8096
- 8920:8920
- 7359:7359/udp
- 1900:1900/udp
- 1901:1900/udp
restart: unless-stopped
group_add:
- "992"
- "44"
devices:
- /dev/dri/renderD128:/dev/dri/renderD128
networks:
- shared_network
deploy:
resources:
reservations:
devices:
- driver: cdi
device_ids:
- nvidia.com/gpu=all
capabilities:
- gpu
- compute
- video
overseerr:
image: lscr.io/linuxserver/overseerr:latest
@ -146,4 +157,4 @@ services:
networks:
shared_network:
external: true
name: shared_network
name: shared_network

View File

@ -1,18 +0,0 @@
name: codeserver
services:
server:
image: lscr.io/linuxserver/code-server:latest
container_name: code-server
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Amsterdam
- HASHED_PASSWORD=
- SUDO_PASSWORD_HASH=
- DEFAULT_WORKSPACE=/config/workspace
volumes:
- ./data:/config
- /mnt:/config/workspace
ports:
- 8443:8443
restart: unless-stopped

22
dockge/compose.yaml Normal file
View File

@ -0,0 +1,22 @@
services:
dockge:
image: louislam/dockge:1
restart: unless-stopped
ports:
# Host Port : Container Port
- 5001:5001
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./data:/app/data
# If you want to use private registries, you need to share the auth file with Dockge:
# - /root/.docker/:/root/.docker
# Stacks Directory
# ⚠️ READ IT CAREFULLY. If you did it wrong, your data could end up writing into a WRONG PATH.
# ⚠️ 1. FULL path only. No relative path (MUST)
# ⚠️ 2. Left Stacks Path === Right Stacks Path (MUST)
- /mnt/services:/mnt/services
environment:
# Tell Dockge where is your stacks directory
- DOCKGE_STACKS_DIR=/mnt/services

View File

@ -16,6 +16,7 @@ services:
extra_hosts:
- host.docker.internal:host-gateway
restart: unless-stopped
# command: [ "/app/duplicati/duplicati", "--webservice-password=Test123" ]
notifications:
image: ghcr.io/vleeuwenmenno/duplicati-discord-notification:main

View File

@ -0,0 +1,40 @@
services:
web:
image: ghcr.io/hoarder-app/hoarder:${HOARDER_VERSION:-release}
restart: unless-stopped
volumes:
- data:/data
ports:
- 3500:3000
env_file:
- .env
environment:
MEILI_ADDR: http://meilisearch:7700
BROWSER_WEB_URL: http://chrome:9222
OPENAI_API_KEY: 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
DATA_DIR: /data
chrome:
image: gcr.io/zenika-hub/alpine-chrome:123
restart: unless-stopped
command:
- --no-sandbox
- --disable-gpu
- --disable-dev-shm-usage
- --remote-debugging-address=0.0.0.0
- --remote-debugging-port=9222
- --hide-scrollbars
meilisearch:
image: getmeili/meilisearch:v1.11.1
restart: unless-stopped
env_file:
- .env
environment:
MEILI_NO_ANALYTICS: "true"
volumes:
- meilisearch:/meili_data
volumes:
meilisearch:
data:

View File

@ -0,0 +1,17 @@
services:
homeassistant:
container_name: homeassistant
image: "ghcr.io/home-assistant/home-assistant:stable"
volumes:
- "/var/run/dbus:/run/dbus:ro"
- ./config/ha:/config
- /var/run/docker.sock:/var/run/docker.sock
environment:
- TZ=Europe/Amsterdam
- PUID=1000
- PGID=1000
restart: unless-stopped
privileged: true
network_mode: host
devices:
- /dev/ttyUSB0:/dev/ttyUSB0

View File

@ -2,9 +2,9 @@ name: immich
services:
server:
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
#extends:
# file: hwaccel.transcoding.yml
# service: nvenc # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
extends:
file: hwaccel.transcoding.yml
service: nvenc # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
@ -18,22 +18,21 @@ services:
environment:
- PUID=1000
- PGID=1000
restart: always
restart: unless-stopped
healthcheck:
disable: false
machine-learning:
# For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag.
# Example tag: ${IMMICH_VERSION:-release}-cuda
# For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag. machine-learning # Example tag: ${IMMICH_VERSION:-release}-cuda
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}-cuda
#extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
# file: hwaccel.ml.yml
# service: cuda # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable
extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
file: hwaccel.ml.yml
service: cuda # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable
volumes:
- model-cache:/cache
env_file:
- .env
restart: always
restart: unless-stopped
healthcheck:
disable: false
@ -42,7 +41,7 @@ services:
image: docker.io/redis:6.2-alpine@sha256:2ba50e1ac3a0ea17b736ce9db2b0a9f6f8b85d4c27d5f5accc6a416d8f42c6d5
healthcheck:
test: redis-cli ping || exit 1
restart: always
restart: unless-stopped
database:
container_name: immich_postgres
@ -78,7 +77,7 @@ services:
'-c',
'wal_compression=on',
]
restart: always
restart: unless-stopped
volumes:
model-cache:

View File

@ -14,8 +14,9 @@ services:
resources:
reservations:
devices:
- driver: nvidia
count: 1
- driver: cdi
device_ids:
- nvidia.com/gpu=all
capabilities:
- gpu

View File

@ -14,8 +14,9 @@ services:
resources:
reservations:
devices:
- driver: nvidia
count: 1
- driver: cdi
device_ids:
- nvidia.com/gpu=all
capabilities:
- gpu
- compute

View File

@ -1,8 +1,7 @@
services:
plex:
image: lscr.io/linuxserver/plex:latest
image: plexinc/pms-docker:latest
container_name: plex
network_mode: host
environment:
- PUID=1000
- PGID=1000
@ -12,12 +11,35 @@ services:
- NVIDIA_DRIVER_CAPABILITIES=compute,video,utility
volumes:
- /mnt/services/plex/data/plex:/config
- /tmp/plex-transcode:/transcode
- /mnt/movies:/movies
- /mnt/tvshows:/tvshows
- /mnt/music:/music
- /mnt/photos/plex:/photos
- /dev/dri/renderD128:/dev/dri/renderD128
restart: unless-stopped
ports:
- 32400:32400/tcp
- 3005:3005/tcp
- 8324:8324/tcp
- 32469:32469/tcp
# - 1900:1900/udp
- 32410:32410/udp
- 32412:32412/udp
- 32413:32413/udp
- 32414:32414/udp
networks:
- shared_network
deploy:
resources:
reservations:
devices:
- driver: cdi
device_ids:
- nvidia.com/gpu=all
capabilities:
- gpu
- compute
- video
tautulli:
image: lscr.io/linuxserver/tautulli:latest

View File

@ -1,44 +0,0 @@
name: satisfactory
services:
server:
hostname: 'satisfactory-server'
image: 'wolveix/satisfactory-server:latest'
restart: unless-stopped
volumes:
- './data/config:/config'
- './data/certs/live/satisfactory.mvl.sh/fullchain.pem:/config/gamefiles/FactoryGame/Certificates/cert_chain.pem'
- './data/certs/live/satisfactory.mvl.sh/privkey.pem:/config/gamefiles/FactoryGame/Certificates/private_key.pem'
environment:
- MAXPLAYERS=4
- PGID=1000
- PUID=1000
- ROOTLESS=false
- STEAMBETA=false
healthcheck:
test: [ "CMD", "bash", "/healthcheck.sh" ]
interval: 30s
timeout: 10s
retries: 3
start_period: 120s
depends_on:
certbot:
condition: service_completed_successfully
deploy:
resources:
reservations:
memory: 4G
limits:
memory: 8G
network_mode: 'host'
certbot:
image: certbot/certbot
command: certonly --standalone --non-interactive --agree-tos -m menno@vleeuwen.me -d satisfactory.mvl.sh
# Uncomment this when requesting a new certificate, make sure to disable nginx-proxy-manager first since this conflicts with port 80
# ports:
# - '80:80/tcp'
volumes:
- ./data/certs:/etc/letsencrypt
environment:
- CERTBOT_MAIL=menno@vleeuwen.me
- DOMAIN=satisfactory.mvl.sh

View File

@ -1,7 +1,7 @@
services:
gluetun:
image: qmcgaw/gluetun:latest
container_name: gluetun
privileged: true
cap_add:
- NET_ADMIN
networks:
@ -10,6 +10,8 @@ services:
- 6881:6881
- 6881:6881/udp
- 8085:8085
devices:
- /dev/net/tun:/dev/net/tun
volumes:
- /mnt/services/torrent/data/gluetun:/gluetun
environment:
@ -23,7 +25,6 @@ services:
qbittorrent:
image: lscr.io/linuxserver/qbittorrent
container_name: qbittorrent
network_mode: "service:gluetun"
environment:
- PUID=1000
@ -34,10 +35,11 @@ services:
- /mnt/services/torrent/data/qbit-config:/config
- /mnt:/storage
depends_on:
- gluetun
gluetun:
condition: service_healthy
restart: always
networks:
shared_network:
external: true
name: shared_network
name: shared_network

View File

@ -0,0 +1,8 @@
services:
kiwix:
image: offlineinternet/kiwix
ports:
- '8888:8080'
volumes:
- "./data/dumps:/data"
- "./data:/more-data"

View File

@ -8,7 +8,7 @@ services:
environment:
- PUID=1000
- PGID=1000
- PEERS=s24,pc,laptop
- PEERS=s24,pc,laptop,worklaptop
volumes:
- /mnt/services/wireguard/data:/config
ports: