services: #memos: # image: neosmemo/memos:stable # container_name: memos # restart: unless-stopped # volumes: # - "./hdd0/memos:/var/opt/memos" # labels: # - "traefik.enable=true" # - "traefik.http.routers.memos.rule=Host(`notes.bouvais.lu`)" # - "traefik.http.routers.memos.entrypoints=websecure" # - "traefik.http.routers.memos.tls.certresolver=myresolver" # - "traefik.http.services.memos.loadbalancer.server.port=5230" jellyfin: image: jellyfin/jellyfin container_name: jellyfin restart: unless-stopped group_add: - '107' #render - '44' #video volumes: - "./cache/jellyfin:/cache" - "./hdd0/jellyfin:/config" - "./hdd0/media:/media" - type: bind source: /data/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" affine: image: ghcr.io/toeverything/affine-graphql:stable container_name: affine restart: unless-stopped depends_on: redis: condition: service_healthy postgres: condition: service_healthy affine_migration: condition: service_completed_successfully volumes: - /home/adrien/Web-stack/hdd0/affine/storage:/root/.affine/storage - /home/adrien/Web-stack/config/affine:/root/.affine/config environment: - REDIS_SERVER_HOST=redis - DATABASE_URL=postgresql://${DB_USERNAME}:${DB_PASSWORD}@postgres:5432/affine - AFFINE_INDEXER_ENABLED=false - AFFINE_SERVER_EXTERNAL_URL=https://affine.bouvais.lu labels: - "traefik.enable=true" - "traefik.http.routers.affine.rule=Host(`affine.bouvais.lu`)" - "traefik.http.routers.affine.entrypoints=websecure" - "traefik.http.routers.affine.tls.certresolver=myresolver" - "traefik.http.services.affine.loadbalancer.server.port=3010" affine_migration: image: ghcr.io/toeverything/affine-graphql:stable container_name: affine_migration volumes: # custom configurations - /home/adrien/Web-stack/hdd0/affine/storage:/root/.affine/storage - /home/adrien/Web-stack/config/affine:/root/.affine/config command: ['sh', '-c', 'node ./scripts/self-host-predeploy.js'] environment: - REDIS_SERVER_HOST=redis - DATABASE_URL=postgresql://${DB_USERNAME}:${DB_PASSWORD}@postgres:5432/affine - AFFINE_INDEXER_ENABLED=false depends_on: postgres: condition: service_healthy redis: condition: service_healthy