1
0

116 lines
4.1 KiB
YAML

services:
jellyfin:
image: jellyfin/jellyfin
container_name: jellyfin
restart: unless-stopped
group_add:
- '107' #render
- '44' #video
volumes:
- ./cache/jellyfin/cache:/cache
- ./hdd0/jellyfin/config:/config
- type: bind
source: ./hdd0/media
target: /media
labels:
- traefik.enable=true
- traefik.http.routers.jellyfin.rule=Host(`jellyfin.bouvais.lu`)
- traefik.http.routers.jellyfin.entrypoints=websecure
- traefik.http.routers.jellyfin.tls.certresolver=myresolver
- traefik.http.services.jellyfin.loadbalancer.server.port=8096
filebrowser:
image: filebrowser/filebrowser:latest
container_name: filebrowser
restart: unless-stopped
environment:
TZ: Europe/Luxembourg
FB_BASEURL: /
volumes:
- ./config/filebrowser/filebrowser.json:/.filebrowser.json
- ./hdd0/filebrowser/filebrowser.db:/database.db
- ./hdd0/my_files:/srv
labels:
- traefik.enable=true
- traefik.http.routers.filebrowser.rule=Host(`files.bouvais.lu`)
- traefik.http.routers.filebrowser.entrypoints=websecure
- traefik.http.routers.filebrowser.tls.certresolver=myresolver
- traefik.http.services.filebrowser.loadbalancer.server.port=80
actualbudget:
image: actualbudget/actual-server:latest
container_name: actualbudget
restart: unless-stopped
volumes:
- ./hdd0/actualbudget:/data
environment:
- TZ=Europe/Luxembourg
labels:
- traefik.enable=true
- traefik.http.routers.actualbudget.rule=Host(`budget.bouvais.lu`)
- traefik.http.routers.actualbudget.entrypoints=websecure
- traefik.http.routers.actualbudget.tls.certresolver=myresolver
- traefik.http.services.actualbudget.loadbalancer.server.port=5006
vaultwarden:
image: vaultwarden/server:1.33.2
container_name: vaultwarden
restart: unless-stopped
environment:
DOMAIN: https://vault.bouvais.lu
SIGNUPS_ALLOWED: false
volumes:
- ./hdd0/vaultwarden:/data/
labels:
- traefik.enable=true
- traefik.http.services.my-vaultwarden-service.loadbalancer.server.port=80
- traefik.http.routers.vaultwarden.rule=Host(`vault.bouvais.lu`)
- traefik.http.routers.vaultwarden.entrypoints=websecure
- traefik.http.routers.vaultwarden.tls.certresolver=myresolver
- traefik.http.routers.vaultwarden.service=my-vaultwarden-service@docker
- traefik.http.routers.vaultwarden-admin.rule=Host(`vault.bouvais.lu`) && PathPrefix(`/admin`)
- traefik.http.routers.vaultwarden-admin.entrypoints=websecure
- traefik.http.routers.vaultwarden-admin.tls.certresolver=myresolver
- traefik.http.routers.vaultwarden-admin.middlewares=auth@docker
- traefik.http.routers.vaultwarden-admin.service=my-vaultwarden-service@docker
siyuan:
image: b3log/siyuan
container_name: siyuan
command: ['--workspace=/siyuan/workspace/']
volumes:
- /siyuan/workspace:/siyuan/workspace
- ./hdd0/siyuan/workspace:/siyuan/workspace
restart: unless-stopped
environment:
- TZ=Europe/Luxembourg
- SIYUAN_ACCESS_AUTH_CODE=${SIYUAN_ACCESS_AUTH_CODE}
labels:
- traefik.enable=true
- traefik.http.routers.siyuan.rule=Host(`notes.bouvais.lu`)
- traefik.http.routers.siyuan.entrypoints=websecure
- traefik.http.routers.siyuan.tls.certresolver=myresolver
- traefik.http.services.siyuan.loadbalancer.server.port=6806
libreoffice:
image: lscr.io/linuxserver/libreoffice:latest
container_name: libreoffice
environment:
- PUID=1000
- PGID=1000
- CUSTOM_USER=adrien
- PASSWORD=${MASTER_PASSWORD}
- TZ=Europe/Luxembourg
ports:
- 3000:3000
- 3001:3001
volumes:
- ./hdd0/libreoffice:/config
restart: unless-stopped
labels:
- traefik.enable=true
- traefik.http.routers.libreoffice.rule=Host(`libreoffice.bouvais.lu`)
- traefik.http.routers.libreoffice.entrypoints=websecure
- traefik.http.routers.libreoffice.tls.certresolver=myresolver
- traefik.http.services.libreoffice.loadbalancer.server.port=3000