version: "3" services: letsencrypt: image: linuxserver/letsencrypt container_name: letsencrypt restart: unless-stopped cap_add: - NET_ADMIN environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris - URL=belanyi.fr - SUBDOMAINS=wildcard - VALIDATION=dns - DNSPLUGIN=gandi #optional - EMAIL=brunobelanyi@gmail.com #optional - DHLEVEL=2048 #optional - ONLY_SUBDOMAINS=false #optional - EXTRA_DOMAINS= #optional - STAGING=false #optional volumes: - ./letsencrypt:/config ports: - 443:443 freshrss: image: linuxserver/freshrss container_name: freshrss restart: unless-stopped environment: - PGID=1001 - PUID=1000 volumes: - ./freshrss:/config ports: - "667:80" rss-bridge: image: rssbridge/rss-bridge container_name: rss-bridge restart: unless-stopped volumes: - ./rss-bridge/whitelist.txt:/app/whitelist.txt ports: - 3000:80 calibre: image: linuxserver/calibre container_name: calibre restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris - GUAC_USER=ambroisie # optional - GUAC_PASS=3e0109e17016d3a2dc0a350d9a9ca104 # password volumes: - ~/library:/config - ~/books_to_add:/books_to_add ports: - "8080:8080" #- "8081:8081" calibre-web: image: linuxserver/calibre-web container_name: calibre-web restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris - DOCKER_MODS=linuxserver/calibre-web:calibre volumes: - ./calibre-web:/config - ~/library:/books ports: - "8083:8083" gitea: image: gitea/gitea:latest container_name: gitea restart: unless-stopped environment: - APP_NAME="Ambroisie's Gitea" - RUN_MODE=prod - DOMAIN=gitea.belanyi.fr - ROOT_URL=https://gitea.belanyi.fr - LFS_START_SERVER=true - SSH_PORT=222 - USER_UID=1000 - USER_GID=1000 volumes: - ./gitea:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - 6000:3000 - 222:222 pyload: image: linuxserver/pyload container_name: pyload restart: unless-stopped environment: - TZ=Europe/Paris - PUID=1000 - PGID=1000 volumes: - ./pyload:/config - ~/downloads:/downloads ports: - 8000:8000 - 7227:7227 #optional transmission: image: linuxserver/transmission container_name: transmission restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris # UI can be combustion-release, transmission-web-control, or kettu - TRANSMISSION_WEB_HOME=/combustion-release/ - USER=Ambroisie #optional - PASS=yb87AdRXZJPK2w^QFY!BM8QD4Pn5rpeK #optional volumes: - ./transmission:/config - ~/downloads:/downloads - ~/downloads/blackhole:/watch ports: - 9091:9091 - 51413:51413 - 51413:51413/udp sabnzbd: image: linuxserver/sabnzbd container_name: sabnzbd restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris volumes: - ./sabnzbd:/config - ~/downloads:/downloads ports: - 8081:8080 - 9090:9090 nzbhydra2: image: linuxserver/nzbhydra2 container_name: nzbhydra2 restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/London volumes: - ./nzbhydra2:/config - ~/downloads:/downloads ports: - 5076:5076 jackett: image: linuxserver/jackett container_name: jackett restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris volumes: - ./jackett:/config - ~/downloads/blackhole:/downloads ports: - 9117:9117 sonarr: image: linuxserver/sonarr container_name: sonarr restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris - UMASK_SET=022 #optional volumes: - ./sonarr:/config - ~/videos/shows:/tv - ~/downloads:/downloads ports: - 8989:8989 radarr: image: linuxserver/radarr container_name: radarr restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris - UMASK_SET=022 #optional volumes: - ./radarr:/config - ~/videos/movies:/movies - ~/downloads:/downloads ports: - 7878:7878 bazarr: image: linuxserver/bazarr container_name: bazarr restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris - UMASK_SET=022 #optional volumes: - ./bazarr:/config - ~/videos/movies:/movies - ~/videos/shows:/tv ports: - 6767:6767 lidarr: image: linuxserver/lidarr container_name: lidarr restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris - UMASK_SET=022 #optional volumes: - ./lidarr:/config - ~/music:/music - ~/downloads:/downloads ports: - 8686:8686 quassel-core: image: linuxserver/quassel-core container_name: quassel-core restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris - RUN_OPTS=--config-from-environment #optional - DB_BACKEND=SQLite - AUTH_AUTHENTICATOR=Database volumes: - ./quassel:/config ports: - 4242:4242 - 113:10113 #optional emby: image: linuxserver/emby container_name: emby restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris - UMASK_SET=022 #optional volumes: - ./emby:/config - ~/videos/shows:/data/tvshows - ~/videos/movies:/data/movies - /tmp/transcode:/transcode #optional ports: - 8096:8096 airsonic: image: linuxserver/airsonic container_name: airsonic restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Paris - CONTEXT_PATH=/ volumes: - ./airsonic/:/config - ~/music/:/music - ~/podcasts:/podcasts - ~/playlists:/playlists ports: - 4040:4040 komga: image: gotson/komga container_name: komga restart: unless-stopped volumes: - ./komga:/config - ~/comics:/books/comics - ~/manga:/books/manga - /etc/timezone:/etc/timezone:ro ports: - 8082:8080 user: 1000:1000 photoprism: image: photoprism/photoprism:latest container_name: photoprism restart: unless-stopped healthcheck: test: "photoprism status" interval: 60s timeout: 15s retries: 5 environment: PHOTOPRISM_URL: "https://photoprism.belanyi.fr" PHOTOPRISM_TITLE: "PhotoPrism" PHOTOPRISM_SUBTITLE: "Browse your life" PHOTOPRISM_DESCRIPTION: "Personal Photo Management powered by Go and Google TensorFlow. Free and open-source." PHOTOPRISM_AUTHOR: "Anonymous" PHOTOPRISM_TWITTER: "@browseyourlife" PHOTOPRISM_UPLOAD_NSFW: "true" PHOTOPRISM_DETECT_NSFW: "true" PHOTOPRISM_EXPERIMENTAL: "false" PHOTOPRISM_DEBUG: "false" PHOTOPRISM_READONLY: "false" PHOTOPRISM_PUBLIC: "false" PHOTOPRISM_DISABLE_SETTINGS: "false" PHOTOPRISM_HTTP_HOST: "0.0.0.0" PHOTOPRISM_HTTP_PORT: 2342 PHOTOPRISM_TIDB_HOST: "0.0.0.0" PHOTOPRISM_TIDB_PORT: 2343 # Port for built-in TiDB SQL server (driver "tidb") PHOTOPRISM_TIDB_PASSWORD: "photoprism" # Plain text only (username "root") PHOTOPRISM_ADMIN_PASSWORD: "$$2y$$10$$5/1WPeVMXk4SjBKyDdbqhuQU3RPiYyGZGl8yh0Fxa9eno6Ou/FbSi" # Plain text or bcrypt hash (escape "$" with "$$") #PHOTOPRISM_WEBDAV_PASSWORD: "photoprism" # Plain text only (username "photoprism") PHOTOPRISM_DATABASE_DRIVER: "tidb" # Change to "mysql" for external MySQL or MariaDB PHOTOPRISM_DATABASE_DSN: "root:photoprism@tcp(localhost:2343)/photoprism?parseTime=true" PHOTOPRISM_JPEG_QUALITY: 90 # Use 95 for high-quality thumbnails (requires more storage) PHOTOPRISM_THUMB_FILTER: "lanczos" # Resample filter, best to worst: blackman, lanczos, cubic, linear PHOTOPRISM_THUMB_UNCACHED: "false" # On-demand rendering of default thumbnails (high memory and cpu usage) PHOTOPRISM_THUMB_SIZE: 2048 # Default thumbnail size limit (default 2048, min 720, max 3840) PHOTOPRISM_THUMB_LIMIT: 3840 # On-demand thumbnail size limit (default 2048, min 720, max 3840) volumes: - ~/pictures/originals:/photoprism/originals - ~/pictures/import:/photoprism/import - ./photoprism/config:/photoprism/config - ./photoprism/cache:/photoprism/cache - ./photoprism/database:/photoprism/database ports: - 2342:2342 - 2343:2343 user: 1000:1000