seedbox/docker-compose.yml

286 lines
8.2 KiB
YAML

version: '3'
services:
traefik:
image: traefik
container_name: traefik
restart: always
networks:
- webgateway
command: --acme.email=${ACME_MAIL} --docker.domain=${TRAEFIK_DOMAIN}
ports:
- "80:80"
- "443:443"
- "8080:8080"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./traefik.toml:/traefik.toml
- /opt/traefik/acme.json:/acme.json
deluge:
image: linuxserver/deluge
restart: always
networks:
- web
volumes:
- torrents:/torrents
- configdeluge:/config
- downloads:/downloads
environment:
- PGID=0
- PUID=0
- TZ=Europe/Paris
labels:
- 'traefik.backend=deluge'
- 'traefik.port=8112'
- 'traefik.frontend.rule=Host:deluge.${TRAEFIK_DOMAIN}'
- 'traefik.frontend.auth.basic=${HTTP_USER}:${HTTP_PASSWORD}'
- 'traefik.enable=true'
h5ai:
image: fromenje/seedbox:h5ai
build: Dockerfiles/h5ai
restart: always
networks:
- web
volumes:
- torrents:/torrents
- config:/config
labels:
- 'traefik.backend=h5ai'
- 'traefik.port=12333'
- 'traefik.frontend.rule=Host:explore.${TRAEFIK_DOMAIN}'
- 'traefik.frontend.auth.basic=${HTTP_USER}:${HTTP_PASSWORD}'
- 'traefik.enable=true'
- com.centurylinklabs.watchtower.enable=false
# owncloud:
# image: owncloud:latest
# restart: always
# volumes:
# - torrents:/var/www/html/data/admin/files
# networks:
# - main
# ports:
# - "7474:80"
plex:
image: fromenje/seedbox:plex
build: Dockerfiles/plex
restart: always
networks:
- web
ports:
- "32400:32400"
volumes:
- config:/config
- torrents:/torrents
env_file:
- config
labels:
- 'traefik.backend=plex'
- 'traefik.port=32400'
- 'traefik.frontend.rule=Host:plex.${TRAEFIK_DOMAIN}'
- 'traefik.frontend.auth.basic=${HTTP_USER}:${HTTP_PASSWORD}'
- 'traefik.enable=true'
- com.centurylinklabs.watchtower.enable=false
# plex:
# image: linuxserver/plex
# restart: always
# network_mode: host
# ports:
# - "32400:32400"
# volumes:
# - config:/config
# - torrents:/torrents
# environment:
# - PGID=0
# - PUID=0
# - TZ=Europe/Paris
# - VERSION=latest
# labels:
# - 'traefik.backend=plex'
# - 'traefik.port=32400'
# - 'traefik.frontend.rule=Host:plex.${TRAEFIK_DOMAIN}'
# - 'traefik.frontend.auth.basic=${HTTP_USER}:${HTTP_PASSWORD}'
# - 'traefik.enable=true'
sonarr:
image: linuxserver/sonarr:develop
restart: always
networks:
- web
volumes:
- configsonarr:/config
- torrents:/torrents
- tvshows:/tv
- downloads:/downloads
- /etc/localtime:/etc/localtime:ro
environment:
- PGID=0
- PUID=0
- TZ=Europe/Paris
labels:
- 'traefik.backend=sonarr'
- 'traefik.port=8989'
- 'traefik.frontend.rule=Host:sonarr.${TRAEFIK_DOMAIN}'
- 'traefik.frontend.auth.basic=${HTTP_USER}:${HTTP_PASSWORD}'
- 'traefik.enable=true'
jackett:
image: linuxserver/jackett
restart: always
networks:
- web
volumes:
- config:/config
- torrents:/downloads
- /etc/localtime:/etc/localtime:ro
environment:
- PGID=0
- PUID=0
- TZ=Europe/Paris
labels:
- 'traefik.backend=jackett'
- 'traefik.port=9117'
- 'traefik.frontend.rule=Host:jackett.${TRAEFIK_DOMAIN}'
- 'traefik.frontend.auth.basic=${HTTP_USER}:${HTTP_PASSWORD}'
- 'traefik.enable=true'
radarr:
image: linuxserver/radarr
restart: always
networks:
- web
volumes:
- config:/config
- downloads:/downloads
- movies:/movies
- torrents:/torrents
- /etc/localtime:/etc/localtime:ro
environment:
- PGID=0
- PUID=0
- TZ=Europe/Paris
labels:
- 'traefik.backend=radarr'
- 'traefik.port=7878'
- 'traefik.frontend.rule=Host:radarr.${TRAEFIK_DOMAIN}'
- 'traefik.frontend.auth.basic=${HTTP_USER}:${HTTP_PASSWORD}'
- 'traefik.enable=true'
tautulli:
image: linuxserver/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=0
- PUID=0
- TZ=Europe/Paris
labels:
- 'traefik.backend=tautulli'
- 'traefik.port=8181'
- 'traefik.frontend.rule=Host:tautulli.${TRAEFIK_DOMAIN}'
- 'traefik.frontend.auth.basic=${HTTP_USER}:${HTTP_PASSWORD}'
- 'traefik.enable=true'
rtorrent:
image: romancin/rutorrent-flood
restart: always
networks:
- web
volumes:
- downloads:/downloads
- configrtorrent:/config
- configflood:/flood-db
- /etc/localtime:/etc/localtime:ro
environment:
- CONTEXT_PATH=/
- FLOOD_SECRET="mzxgMcYuTcNAhJcON4cLAI0dyniPIE2F"
- RTORRENT_SCGI=9000
- PUID=0
- PGID=0
labels:
- 'traefik.backend=rtorrent'
- 'traefik.port=3000'
- 'traefik.frontend.rule=Host:rtorrent.${TRAEFIK_DOMAIN}'
- 'traefik.frontend.auth.basic=${HTTP_USER}:${HTTP_PASSWORD}'
- 'traefik.enable=true'
portainer:
image: portainer/portainer
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'
watchtower:
image: v2tec/watchtower
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /etc/localtime:/etc/localtime:ro
restart: always
environment:
- TZ=Europe/Paris
networks:
webgateway:
driver: bridge
web:
external:
name: seedbox_webgateway
volumes:
config:
driver: local-persist
driver_opts:
mountpoint: /data/config
configsonarr:
driver: local-persist
driver_opts:
mountpoint: /data/config/sonarr
configdeluge:
driver: local-persist
driver_opts:
mountpoint: /data/config/deluge
configtautulli:
driver: local-persist
driver_opts:
mountpoint: /data/config/tautulli
configrtorrent:
driver: local-persist
driver_opts:
mountpoint: /data/config/rtorrent
configflood:
driver: local-persist
driver_opts:
mountpoint: /data/config/flood
torrents:
driver: local-persist
driver_opts:
mountpoint: /data/torrents
movies:
driver: local-persist
driver_opts:
mountpoint: /data/torrents/Movies
tvshows:
driver: local-persist
driver_opts:
mountpoint: /data/torrents/TV\ Shows
downloads:
driver: local-persist
driver_opts:
mountpoint: /data/torrents/deluge