Jafner.net/homelab/stacks/books/docker-compose.yml
2024-09-02 15:41:50 -07:00

92 lines
3.5 KiB
YAML

name: "books"
services:
sabnzbd:
image: linuxserver/sabnzbd:latest
container_name: books_sabnzbd
networks:
- web
environment:
TZ: America/Los_Angeles
PGID: "1001"
PUID: "1001"
volumes:
- "${DOCKER_DATA}/sabnzbd:/config"
- "${NZB_COMPLETED}:/downloads"
- "${NZB_INCOMPLETE}:/incomplete-downloads"
labels:
traefik.http.routers.books-sabnzbd.middlewares: lan-only@file,traefik-forward-auth-privileged@file
traefik.http.routers.books-sabnzbd.rule: Host(`sabnzbd.books.jafner.net`)
traefik.http.routers.books-sabnzbd.tls.certresolver: lets-encrypt-dns01
traefik.http.services.books-sabnzbd.loadbalancer.server.port: 8080
calibre:
image: lscr.io/linuxserver/calibre:latest
container_name: books_calibre
security_opt:
- seccomp:unconfined
networks:
- web
environment:
CALIBRE_OVERRIDE_DATABASE_PATH: /config/metadata.db
CUSTOM_USER: admin
PASSWORD: ${calibre_PASSWORD}
PGID: "1001"
PUID: "1001"
TZ: America/Los_Angeles
volumes:
- "${EBOOKS_LIBRARY}:/ebooks"
- "${DOCKER_DATA}/calibre:/config"
restart: unless-stopped
labels:
traefik.http.routers.books-calibre-desktop.middlewares: lan-only@file,traefik-forward-auth-privileged@file
traefik.http.routers.books-calibre-desktop.rule: Host(`desktop.calibre.books.jafner.net`)
traefik.http.routers.books-calibre-desktop.service: books-calibre-desktop@docker
traefik.http.routers.books-calibre-desktop.tls.certresolver: lets-encrypt-dns01
traefik.http.routers.books-calibre-webui.middlewares: lan-only@file,traefik-forward-auth-privileged@file
traefik.http.routers.books-calibre-webui.rule: Host(`webui.calibre.books.jafner.net`)
traefik.http.routers.books-calibre-webui.service: books-calibre-webui@docker
traefik.http.routers.books-calibre-webui.tls.certresolver: lets-encrypt-dns01
traefik.http.services.books-calibre-desktop.loadbalancer.server.port: "8080"
traefik.http.services.books-calibre-webui.loadbalancer.server.port: "8081"
calibre-web:
image: linuxserver/calibre-web:latest
container_name: books_calibre-web
environment:
PGID: "1001"
PUID: "1001"
TZ: America/Los_Angeles
volumes:
- "${EBOOKS_LIBRARY}:/ebooks"
- "${DOCKER_DATA}/calibre-web:/config"
- "${DOCKER_DATA}/calibre/metadata.db:/ebooks/metadata.db"
labels:
traefik.http.routers.books-calibre-web.middlewares: lan-only@file,traefik-forward-auth-privileged@file
traefik.http.routers.books-calibre-web.rule: Host(`calibreweb.books.jafner.net`)
traefik.http.routers.books-calibre-web.tls.certresolver: lets-encrypt-dns01
networks:
- web
audiobookshelf:
image: ghcr.io/advplyr/audiobookshelf:latest
container_name: books_audiobookshelf
networks:
- web
environment:
PGID: "1001"
PUID: "1001"
TZ: America/Los_Angeles
volumes:
- "${AUDIOBOOKS_LIBRARY}:/books"
- "${DOCKER_DATA}/audiobookshelf:/config"
- "${DOCKER_DATA}/audiobookshelf-metadata:/metadata"
labels:
traefik.http.routers.books-audiobookshelf.middlewares: lan-only@file,traefik-forward-auth-privileged@file
traefik.http.routers.books-audiobookshelf.rule: Host(`audiobookshelf.books.jafner.net`)
traefik.http.routers.books-audiobookshelf.tls.certresolver: lets-encrypt-dns01
traefik.http.services.books-audiobookshelf.loadbalancer.server.port: "8787"
networks:
web:
external: true