version: '3' services: traefik: image: traefik:v1.7-alpine container_name: traefik restart: always networks: - webgateway command: --acme.email=${ACME_MAIL} --docker.domain=${TRAEFIK_DOMAIN} --acme.dnschallenge=true --acme.dnschallenge.provider="cloudflare" --acme.dnschallenge.delaybeforecheck=300 ports: - "80:80" - "443:443" #- "8080:8080" environment: - CF_API_EMAIL=${CLOUDFLARE_EMAIL} - CF_API_KEY=${CLOUDFLARE_API_KEY} volumes: - /var/run/docker.sock:/var/run/docker.sock - ./traefik.toml:/traefik.toml - /opt/traefik/acme.json:/acme.json deluge: image: linuxserver/deluge container_name: deluge restart: always networks: - web volumes: - torrents:/torrents - configdeluge:/config - downloads:/downloads environment: - PGID=${PGID} - PUID=${PUID} - TZ=Europe/Paris labels: - 'traefik.backend=deluge' - 'traefik.port=8112' - 'traefik.frontend.rule=Host:deluge.${TRAEFIK_DOMAIN}' - 'traefik.frontend.auth.basic.users=${HTTP_USER}:${HTTP_PASSWORD}' - 'traefik.enable=true' plex: #image: linuxserver/plex:1.14.1.5488-cc260c476-ls8 image: linuxserver/plex container_name: plex restart: always networks: - web ports: - "32400:32400" - "32400:32400/udp" - "32469:32469" - "32469:32469/udp" - "5353:5353/udp" - "1900:1900/udp" volumes: - configplex:/config - torrents:/torrents environment: - PGID=${PGID} - PUID=${PUID} - TZ=Europe/Paris - VERSION=latest #- VERSION=1.14.0.5470-9d51fdfaa labels: - 'traefik.backend=plex' - 'traefik.port=32400' - 'traefik.frontend.rule=Host:plex.${TRAEFIK_DOMAIN}' #- 'traefik.frontend.auth.basic.users=${HTTP_USER}:${HTTP_PASSWORD}' - 'traefik.enable=true' jackett: image: linuxserver/jackett container_name: jackett restart: always networks: - web volumes: - config:/config - torrents:/downloads - /etc/localtime:/etc/localtime:ro environment: - PGID=${PGID} - PUID=${PUID} - TZ=Europe/Paris labels: - 'traefik.backend=jackett' - 'traefik.port=9117' - 'traefik.frontend.rule=Host:jackett.${TRAEFIK_DOMAIN}' - 'traefik.frontend.auth.basic.users=${HTTP_USER}:${HTTP_PASSWORD}' - 'traefik.enable=true' sonarr: image: linuxserver/sonarr:develop container_name: sonarr restart: always networks: - web volumes: - configsonarr:/config - torrents:/torrents - /etc/localtime:/etc/localtime:ro environment: - PGID=${PGID} - PUID=${PUID} - TZ=Europe/Paris labels: - 'traefik.backend=sonarr' - 'traefik.port=8989' - 'traefik.frontend.rule=Host:sonarr.${TRAEFIK_DOMAIN}' - 'traefik.frontend.auth.basic.users=${HTTP_USER}:${HTTP_PASSWORD}' - 'traefik.enable=true' radarr: image: linuxserver/radarr container_name: radarr restart: always networks: - web volumes: - configradarr:/config - torrents:/torrents - /etc/localtime:/etc/localtime:ro environment: - PGID=${PGID} - PUID=${PUID} - TZ=Europe/Paris labels: - 'traefik.backend=radarr' - 'traefik.port=7878' - 'traefik.frontend.rule=Host:radarr.${TRAEFIK_DOMAIN}' - 'traefik.frontend.auth.basic.users=${HTTP_USER}:${HTTP_PASSWORD}' - 'traefik.enable=true' bazarr: image: linuxserver/bazarr container_name: bazarr restart: always networks: - web volumes: - torrents:/torrents - configbazarr:/config environment: - PGID=${PGID} - PUID=${PUID} - TZ=Europe/Paris labels: - 'traefik.backend=bazarr' - 'traefik.port=6767' - 'traefik.frontend.rule=Host:bazarr.${TRAEFIK_DOMAIN}' - 'traefik.frontend.auth.basic.users=${HTTP_USER}:${HTTP_PASSWORD}' - 'traefik.enable=true' tautulli: image: linuxserver/tautulli container_name: tautulli restart: always networks: - web volumes: - configtautulli:/config - config:/logs:ro # Inside of tautulli, bind to logs via "/logs/Plex Media Server/Logs" environment: - PGID=${PGID} - PUID=${PUID} - TZ=Europe/Paris labels: - 'traefik.tautulli.backend=tautulli' - 'traefik.tautulli.port=8181' - 'traefik.tautulli.frontend.rule=Host:tautulli.${TRAEFIK_DOMAIN}' - 'traefik.enable=true' jdownloader: image: jlesage/jdownloader-2 container_name: jdownloader networks: - web volumes: - configjdownloader:/config - downloads:/output environment: - USER_ID=${PUID} - GROUP_ID=${PGID} - TZ=Europe/Paris labels: - 'traefik.backend=jdownloader' - 'traefik.port=5800' - 'traefik.frontend.rule=Host:jdownloader.${TRAEFIK_DOMAIN}' - 'traefik.frontend.auth.basic.users=${HTTP_USER}:${HTTP_PASSWORD}' - 'traefik.enable=true' nextcloud: image: wonderfall/nextcloud container_name: nextcloud restart: always networks: - web volumes: - confignextcloud:/config - nextclouddata:/data - torrents:/torrents - config:/seedbox-config environment: - GID=${PGID} - UID=${PUID} - TZ=Europe/Paris - ADMIN_USER=${NEXTCLOUD_ADMIN_USER} - ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD} - DOMAIN=nextcloud.${TRAEFIK_DOMAIN} - DB_TYPE=sqlite3 - DB_NAME=${NEXTCLOUD_DB_NAME} - DB_USER=${NEXTCLOUD_DB_USER} - DB_PASSWORD=${NEXTCLOUD_DB_PASSWORD} labels: - 'traefik.backend=nextcloud' - 'traefik.port=8888' - 'traefik.frontend.rule=Host:nextcloud.${TRAEFIK_DOMAIN}' - 'traefik.enable=true' portainer: image: portainer/portainer container_name: portainer restart: always volumes: - /var/run/docker.sock:/var/run/docker.sock networks: - web command: --admin-password ${PORTAINER_ADMIN_PASSWORD} --host=unix:///var/run/docker.sock labels: - 'traefik.backend=portainer' - 'traefik.port=9000' - 'traefik.frontend.rule=Host:portainer.${TRAEFIK_DOMAIN}' - 'traefik.enable=true' netdata: image: netdata/netdata restart: always container_name: netdata hostname: netdata.${TRAEFIK_DOMAIN} networks: - web environment: PGID: 999 cap_add: - SYS_PTRACE security_opt: - apparmor:unconfined volumes: - /proc:/host/proc:ro - /sys:/host/sys:ro - /var/run/docker.sock:/var/run/docker.sock:rw labels: - 'traefik.backend=netdata' - 'traefik.port=19999' - 'traefik.frontend.rule=Host:netdata.${TRAEFIK_DOMAIN}' - 'traefik.frontend.auth.basic.users=${HTTP_USER}:${HTTP_PASSWORD}' - 'traefik.enable=true' duplicati: image: linuxserver/duplicati container_name: duplicati restart: unless-stopped networks: - web environment: - PUID=${PUID} - PGID=${PGID} - TZ=Europe/Paris volumes: - configduplicati:/config - backups:/backups - alldata:/source labels: - 'traefik.backend=duplicati' - 'traefik.port=8200' - 'traefik.frontend.rule=Host:duplicati.${TRAEFIK_DOMAIN}' - 'traefik.frontend.auth.basic.users=${HTTP_USER}:${HTTP_PASSWORD}' - 'traefik.enable=true' attestation: image: fromenje/generateur-attestation container_name: generateur-attestation restart: always networks: - web labels: - 'traefik.backend=attestation' - 'traefik.port=80' - 'traefik.frontend.rule=Host:attestation.${TRAEFIK_DOMAIN}' - 'traefik.enable=true' networks: webgateway: driver: bridge web: external: name: seedbox_webgateway volumes: alldata: driver: local-persist driver_opts: mountpoint: /data config: driver: local-persist driver_opts: mountpoint: /data/config configplex: driver: local-persist driver_opts: mountpoint: /data/config/Plex configsonarr: driver: local-persist driver_opts: mountpoint: /data/config/sonarr configradarr: driver: local-persist driver_opts: mountpoint: /data/config/radarr configbazarr: driver: local-persist driver_opts: mountpoint: /data/config/bazarr configdeluge: driver: local-persist driver_opts: mountpoint: /data/config/deluge configtautulli: driver: local-persist driver_opts: mountpoint: /data/config/tautulli configjdownloader: driver: local-persist driver_opts: mountpoint: /data/config/jdownloader confignextcloud: driver: local-persist driver_opts: mountpoint: /data/config/nextcloud nextclouddata: driver: local-persist driver_opts: mountpoint: /data/config/nextcloud-data torrents: driver: local-persist driver_opts: mountpoint: /data/torrents downloads: driver: local-persist driver_opts: mountpoint: /data/torrents/deluge configduplicati: driver: local-persist driver_opts: mountpoint: /data/config/duplicati backups: driver: local-persist driver_opts: mountpoint: /data/backups