Remove env_file dependencies from media and maintenance stacks - inline all non-secret values directly in compose files
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/push/woodpecker Pipeline was successful
This commit is contained in:
@@ -0,0 +1,89 @@
|
|||||||
|
services:
|
||||||
|
cronicle:
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock:rw
|
||||||
|
- /volume1/docker/cronicle/data:/opt/cronicle/data:rw
|
||||||
|
- /volume1/docker/cronicle/logs:/opt/cronicle/logs:rw
|
||||||
|
- /volume1/docker/cronicle/plugins:/opt/cronicle/plugins:rw
|
||||||
|
- /volume1/docker/cronicle/app:/opt/cronicle/app:rw
|
||||||
|
- /volume1/docker/cronicle/ssh_keys:/opt/cronicle/ssh_keys:rw
|
||||||
|
# - /volume1/docker/cronicle/conf:/opt/cronicle/conf:rw
|
||||||
|
hostname: schedule
|
||||||
|
ports:
|
||||||
|
- 3012:3012
|
||||||
|
# container_name: cronicle
|
||||||
|
image: bluet/cronicle-docker:latest
|
||||||
|
environment:
|
||||||
|
- CRONICLE_base_app_url=https://schedule.bryanmail.net
|
||||||
|
# - CRONICLE_VERSION 0.9.59
|
||||||
|
- CRONICLE_WebServer__http_port=3012
|
||||||
|
- CRONICLE_WebServer__https_port=443
|
||||||
|
- CRONICLE_web_socket_use_hostnames=1
|
||||||
|
- CRONICLE_server_comm_use_hostnames=1
|
||||||
|
- CRONICLE_web_direct_connect=0
|
||||||
|
- CRONICLE_custom_live_log_socket_url=schedule.bryanmail.net
|
||||||
|
# - CRONICLE_socket_io_transports=polling
|
||||||
|
networks:
|
||||||
|
traefik_backend:
|
||||||
|
aliases:
|
||||||
|
- schedule
|
||||||
|
deploy:
|
||||||
|
labels:
|
||||||
|
- traefik.enable=true
|
||||||
|
- traefik.http.routers.cron.rule=Host(`schedule.bryanmail.net`)
|
||||||
|
- traefik.http.routers.cron.tls=true
|
||||||
|
- traefik.http.routers.cron.tls.certresolver=letsencrypt
|
||||||
|
- traefik.http.routers.cron.entrypoints=websecure
|
||||||
|
- traefik.http.services.cron.loadbalancer.server.port=3012
|
||||||
|
- traefik.swarm.network=traefik_backend
|
||||||
|
- traefik.http.routers.cron.middlewares=forwardAuth-authentik@file, crowdsec@file
|
||||||
|
- traefik.http.routers.cron-ip.rule=Host(`schedule.bryanmail.net`) && ClientIP(`10.0.0.0/8`)
|
||||||
|
- traefik.http.routers.cron-ip.tls=true
|
||||||
|
- traefik.http.routers.cron-ip.tls.certresolver=letsencrypt
|
||||||
|
- traefik.http.routers.cron-ip.entrypoints=websecure
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
cpus: '2' # Limit to 0.5 CPU core
|
||||||
|
memory: 512M
|
||||||
|
|
||||||
|
uptime-kuma:
|
||||||
|
image: louislam/uptime-kuma:2
|
||||||
|
hostname: uptime-kuma
|
||||||
|
# ports:
|
||||||
|
# - "3001:3001" # This maps the container port "3001" to the host port "3001"
|
||||||
|
volumes:
|
||||||
|
- /volume1/docker/uptime-kuma/data:/app/data # Configuring persistent storage
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||||
|
environment:
|
||||||
|
- TZ=PST # Set the timezone (change to your preferred local timezone so monitoring times are the same)
|
||||||
|
- UMASK=0022 # Set your file permissions manually
|
||||||
|
networks:
|
||||||
|
- traefik_backend # add your own custom network config
|
||||||
|
- postgresql_db-backend
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD", "curl", "-f", "http://localhost:3001"]
|
||||||
|
interval: 30s
|
||||||
|
retries: 3
|
||||||
|
start_period: 10s
|
||||||
|
timeout: 5s
|
||||||
|
logging:
|
||||||
|
driver: "json-file"
|
||||||
|
options:
|
||||||
|
max-size: "10m"
|
||||||
|
max-file: "3"
|
||||||
|
deploy:
|
||||||
|
labels:
|
||||||
|
- traefik.enable=true
|
||||||
|
- traefik.http.routers.uptime.rule=Host(`uptime.bryanmail.net`)
|
||||||
|
- traefik.http.routers.uptime.tls=true
|
||||||
|
- traefik.http.routers.uptime.tls.certresolver=letsencrypt
|
||||||
|
- traefik.http.routers.uptime.entrypoints=websecure
|
||||||
|
- traefik.http.services.uptime.loadbalancer.server.port=3001
|
||||||
|
- traefik.http.services.uptime.loadbalancer.server.scheme=http
|
||||||
|
- traefik.swarm.network=traefik_backend
|
||||||
|
- traefik.http.routers.uptime.middlewares=forwardAuth-authentik@file, crowdsec@file
|
||||||
|
networks:
|
||||||
|
postgresql_db-backend:
|
||||||
|
external: true
|
||||||
|
traefik_backend:
|
||||||
|
external: true
|
||||||
+318
-322
@@ -1,322 +1,318 @@
|
|||||||
services:
|
services:
|
||||||
Plex-Media-Server-GPU:
|
Plex-Media-Server-GPU:
|
||||||
env_file:
|
hostname: plex
|
||||||
- media.env
|
cap_add:
|
||||||
hostname: plex
|
- SYS_MODULE
|
||||||
cap_add:
|
entrypoint:
|
||||||
- SYS_MODULE
|
- "/init"
|
||||||
entrypoint:
|
# - /bin/bash #turn on for DB maintenance
|
||||||
- "/init"
|
# command: -c "sleep infinity" #turn on for DB maintenance
|
||||||
# - /bin/bash #turn on for DB maintenance
|
environment:
|
||||||
# command: -c "sleep infinity" #turn on for DB maintenance
|
- "PUID=0" #1027
|
||||||
environment:
|
- "PGID=0" #100
|
||||||
- "PUID=${PLEX_PUID}" #1027
|
- "VERSION=latest"
|
||||||
- "PGID=${PLEX_PGID}" #100
|
- "ADVERTISE_IP=https://plex.bryanmail.net:443/"
|
||||||
- "VERSION=latest"
|
networks:
|
||||||
- "ADVERTISE_IP=${ADVERTISE_IP}"
|
- traefik_backend
|
||||||
networks:
|
# ports:
|
||||||
- traefik_backend
|
# Plex External Ports
|
||||||
# ports:
|
# - target: 32400
|
||||||
# Plex External Ports
|
# published: 32401
|
||||||
# - target: 32400
|
# protocol: tcp
|
||||||
# published: 32401
|
# mode: host
|
||||||
# protocol: tcp
|
# - "1900/udp"
|
||||||
# mode: host
|
# - "3005/tcp"
|
||||||
# - "1900/udp"
|
# - "32400/tcp"
|
||||||
# - "3005/tcp"
|
# - "32410/udp"
|
||||||
# - "32400/tcp"
|
# - "32412/udp"
|
||||||
# - "32410/udp"
|
# - "32413/udp"
|
||||||
# - "32412/udp"
|
# - "32414/udp"
|
||||||
# - "32413/udp"
|
# - "32469/tcp"
|
||||||
# - "32414/udp"
|
# - "5353/udp"
|
||||||
# - "32469/tcp"
|
# - "8324/tcp"
|
||||||
# - "5353/udp"
|
image: "linuxserver/plex:latest"
|
||||||
# - "8324/tcp"
|
# restart: "always"
|
||||||
image: "linuxserver/plex:latest"
|
# logging:
|
||||||
# restart: "always"
|
# driver: "db"
|
||||||
# logging:
|
# options: {}
|
||||||
# driver: "db"
|
# network_mode: "host"
|
||||||
# options: {}
|
# restart: "always"
|
||||||
# network_mode: "host"
|
# stdin_open: true
|
||||||
# restart: "always"
|
# tty: true
|
||||||
# stdin_open: true
|
volumes:
|
||||||
# tty: true
|
# - /volume1/Podcasts:/volume1/Podcasts
|
||||||
volumes:
|
- /volume1/TV Shows:/volume1/TV
|
||||||
# - /volume1/Podcasts:/volume1/Podcasts
|
- /volume1/Movies:/volume1/Movies
|
||||||
- /volume1/TV Shows:/volume1/TV
|
# - /volume1/Music:/volume1/Music
|
||||||
- /volume1/Movies:/volume1/Movies
|
- /volume1/docker/Plex Media Server:/config
|
||||||
# - /volume1/Music:/volume1/Music
|
- /volume1/Plex-Backups:/Plex-Backups
|
||||||
- /volume1/docker/Plex Media Server:/config
|
- /dev/dri:/dev/dri
|
||||||
- /volume1/Plex-Backups:/Plex-Backups
|
- type: tmpfs
|
||||||
- /dev/dri:/dev/dri
|
target: /dev/shm
|
||||||
- type: tmpfs
|
tmpfs:
|
||||||
target: /dev/shm
|
size: 400000000000
|
||||||
tmpfs:
|
healthcheck:
|
||||||
size: 400000000000
|
test: curl -fsS http://localhost:32400/identity > /dev/null || exit 1
|
||||||
healthcheck:
|
start_period: 900s
|
||||||
test: curl -fsS http://localhost:32400/identity > /dev/null || exit 1
|
timeout: 10s
|
||||||
start_period: 900s
|
interval: 5s
|
||||||
timeout: 10s
|
# retries: 3
|
||||||
interval: 5s
|
deploy:
|
||||||
# retries: 3
|
labels:
|
||||||
deploy:
|
- traefik.enable=true
|
||||||
labels:
|
- traefik.http.routers.plex.rule=Host(`plex.bryanmail.net`)
|
||||||
- traefik.enable=true
|
- traefik.http.routers.plex.tls=true
|
||||||
- traefik.http.routers.plex.rule=Host(`${PLEX_HOST}`)
|
- traefik.http.routers.plex.tls.certresolver=letsencrypt
|
||||||
- traefik.http.routers.plex.tls=true
|
- traefik.http.routers.plex.entrypoints=websecure
|
||||||
- traefik.http.routers.plex.tls.certresolver=letsencrypt
|
- traefik.http.services.plex.loadbalancer.server.port=32400
|
||||||
- traefik.http.routers.plex.entrypoints=websecure
|
- traefik.http.services.plex.loadbalancer.server.scheme=https
|
||||||
- traefik.http.services.plex.loadbalancer.server.port=32400
|
# - traefik.http.routers.plex.middlewares=forward-header
|
||||||
- traefik.http.services.plex.loadbalancer.server.scheme=https
|
# - traefik.http.middlewares.forward-header.forwardauth.trustForwardHeader=true
|
||||||
# - traefik.http.routers.plex.middlewares=forward-header
|
- traefik.http.routers.plex.middlewares=crowdsec@file
|
||||||
# - traefik.http.middlewares.forward-header.forwardauth.trustForwardHeader=true
|
- traefik.swarm.network=traefik_backend
|
||||||
- traefik.http.routers.plex.middlewares=crowdsec@file
|
- autoheal=true
|
||||||
- traefik.swarm.network=traefik_backend
|
resources:
|
||||||
- autoheal=true
|
limits:
|
||||||
resources:
|
cpus: '8'
|
||||||
limits:
|
memory: 4G
|
||||||
cpus: '8'
|
placement:
|
||||||
memory: 4G
|
constraints:
|
||||||
placement:
|
- node.labels.block != databases
|
||||||
constraints:
|
|
||||||
- node.labels.block != databases
|
Radarr:
|
||||||
|
entrypoint:
|
||||||
Radarr:
|
- "/init"
|
||||||
entrypoint:
|
environment:
|
||||||
- "/init"
|
- "PUID=0" #1027
|
||||||
environment:
|
- "PGID=0" #100
|
||||||
- "PUID=${PLEX_PUID}" #1027
|
- "TZ=PST"
|
||||||
- "PGID=${PLEX_PGID}" #100
|
image: "linuxserver/radarr:latest"
|
||||||
- "TZ=PST"
|
# restart: "always"
|
||||||
image: "linuxserver/radarr:latest"
|
hostname: movies
|
||||||
# restart: "always"
|
networks:
|
||||||
hostname: movies
|
- traefik_backend
|
||||||
networks:
|
- postgresql_db-backend
|
||||||
- traefik_backend
|
# ports:
|
||||||
- postgresql_db-backend
|
# - target: 7878
|
||||||
# ports:
|
# published: 7878
|
||||||
# - target: 7878
|
# protocol: tcp
|
||||||
# published: 7878
|
# mode: bridge
|
||||||
# protocol: tcp
|
# - target: 8787
|
||||||
# mode: bridge
|
# published: 8787
|
||||||
# - target: 8787
|
# protocol: tcp
|
||||||
# published: 8787
|
# mode: bridge
|
||||||
# protocol: tcp
|
# expose:
|
||||||
# mode: bridge
|
# - "7878" # This exposes port 5432 internally.
|
||||||
# expose:
|
stdin_open: true
|
||||||
# - "7878" # This exposes port 5432 internally.
|
tty: true
|
||||||
stdin_open: true
|
volumes:
|
||||||
tty: true
|
- /volume1/docker/Radarr/config:/config
|
||||||
volumes:
|
- /volume1/Box Office/incomplete:/incomplete
|
||||||
- /volume1/docker/Radarr/config:/config
|
- /volume1/Box Office/Drop off:/dropoff
|
||||||
- /volume1/Box Office/incomplete:/incomplete
|
- /volume1/Movies:/movies
|
||||||
- /volume1/Box Office/Drop off:/dropoff
|
healthcheck:
|
||||||
- /volume1/Movies:/movies
|
test: curl -fSs http://127.0.0.1:7878 > /dev/null || exit 1
|
||||||
healthcheck:
|
start_period: 90s
|
||||||
test: curl -fSs http://127.0.0.1:7878 > /dev/null || exit 1
|
timeout: 5s
|
||||||
start_period: 90s
|
interval: 5s
|
||||||
timeout: 5s
|
retries: 3
|
||||||
interval: 5s
|
deploy:
|
||||||
retries: 3
|
# endpoint_mode: dnsrr
|
||||||
deploy:
|
labels:
|
||||||
# endpoint_mode: dnsrr
|
- traefik.enable=true
|
||||||
labels:
|
- traefik.http.routers.radarr.rule=Host(`movies.bryanmail.net`)
|
||||||
- traefik.enable=true
|
- traefik.http.routers.radarr.tls=true
|
||||||
- traefik.http.routers.radarr.rule=Host(`${RADARR_HOST}`)
|
- traefik.http.routers.radarr.tls.certresolver=letsencrypt
|
||||||
- traefik.http.routers.radarr.tls=true
|
- traefik.http.routers.radarr.entrypoints=websecure
|
||||||
- traefik.http.routers.radarr.tls.certresolver=letsencrypt
|
- traefik.http.services.movies.loadbalancer.server.port=7878
|
||||||
- traefik.http.routers.radarr.entrypoints=websecure
|
# - traefik.http.services.movies.loadbalancer.server.scheme=https
|
||||||
- traefik.http.services.movies.loadbalancer.server.port=7878
|
- traefik.swarm.network=traefik_backend
|
||||||
# - traefik.http.services.movies.loadbalancer.server.scheme=https
|
- traefik.http.routers.radarr.middlewares=forwardAuth-authentik@file, crowdsec@file
|
||||||
- traefik.swarm.network=traefik_backend
|
- autoheal=true
|
||||||
- traefik.http.routers.radarr.middlewares=forwardAuth-authentik@file, crowdsec@file
|
resources:
|
||||||
- autoheal=true
|
limits:
|
||||||
resources:
|
cpus: '2'
|
||||||
limits:
|
memory: 512M
|
||||||
cpus: '2'
|
|
||||||
memory: 512M
|
Sonarr:
|
||||||
|
entrypoint:
|
||||||
Sonarr:
|
- "/init"
|
||||||
entrypoint:
|
environment:
|
||||||
- "/init"
|
- "TZ=PST"
|
||||||
environment:
|
- "PUID=0" #1027
|
||||||
- "TZ=PST"
|
- "PGID=0" #100
|
||||||
- "PUID=${PLEX_PUID}" #1027
|
image: "linuxserver/sonarr:latest"
|
||||||
- "PGID=${PLEX_PGID}" #100
|
hostname: tv
|
||||||
image: "linuxserver/sonarr:latest"
|
networks:
|
||||||
hostname: tv
|
- traefik_backend
|
||||||
networks:
|
- postgresql_db-backend
|
||||||
- traefik_backend
|
# ports:
|
||||||
- postgresql_db-backend
|
# - target: 8989
|
||||||
# ports:
|
# published: 8989
|
||||||
# - target: 8989
|
# protocol: tcp
|
||||||
# published: 8989
|
# mode: overlay
|
||||||
# protocol: tcp
|
# - target: 9898
|
||||||
# mode: overlay
|
# published: 9898
|
||||||
# - target: 9898
|
# protocol: tcp
|
||||||
# published: 9898
|
# mode: bridge
|
||||||
# protocol: tcp
|
# expose:
|
||||||
# mode: bridge
|
# - "8989" # This exposes port 8989 internally.
|
||||||
# expose:
|
volumes:
|
||||||
# - "8989" # This exposes port 8989 internally.
|
- /volume1/Box Office/incomplete:/incomplete
|
||||||
volumes:
|
- /volume1/Box Office/Drop off:/dropoff
|
||||||
- /volume1/Box Office/incomplete:/incomplete
|
- /volume1/TV Shows:/tv
|
||||||
- /volume1/Box Office/Drop off:/dropoff
|
- /volume1/docker/Sonarr/config:/config
|
||||||
- /volume1/TV Shows:/tv
|
healthcheck:
|
||||||
- /volume1/docker/Sonarr/config:/config
|
test: curl -fSs http://127.0.0.1:8989 || exit 1
|
||||||
healthcheck:
|
start_period: 90s
|
||||||
test: curl -fSs http://127.0.0.1:8989 || exit 1
|
timeout: 5s
|
||||||
start_period: 90s
|
interval: 5s
|
||||||
timeout: 5s
|
retries: 3
|
||||||
interval: 5s
|
deploy:
|
||||||
retries: 3
|
labels:
|
||||||
deploy:
|
- traefik.enable=true
|
||||||
labels:
|
- traefik.http.routers.sonarr.rule=Host(`tv.bryanmail.net`)
|
||||||
- traefik.enable=true
|
- traefik.http.routers.sonarr.tls=true
|
||||||
- traefik.http.routers.sonarr.rule=Host(`${SONARR_HOST}`)
|
- traefik.http.routers.sonarr.tls.certresolver=letsencrypt
|
||||||
- traefik.http.routers.sonarr.tls=true
|
- traefik.http.routers.sonarr.entrypoints=websecure
|
||||||
- traefik.http.routers.sonarr.tls.certresolver=letsencrypt
|
- traefik.http.services.tv.loadbalancer.server.port=8989
|
||||||
- traefik.http.routers.sonarr.entrypoints=websecure
|
# - traefik.http.services.tv.loadbalancer.server.scheme=https
|
||||||
- traefik.http.services.tv.loadbalancer.server.port=8989
|
- traefik.swarm.network=traefik_backend
|
||||||
# - traefik.http.services.tv.loadbalancer.server.scheme=https
|
- traefik.http.routers.sonarr.middlewares=forwardAuth-authentik@file, crowdsec@file
|
||||||
- traefik.swarm.network=traefik_backend
|
- autoheal=true
|
||||||
- traefik.http.routers.sonarr.middlewares=forwardAuth-authentik@file, crowdsec@file
|
resources:
|
||||||
- autoheal=true
|
limits:
|
||||||
resources:
|
cpus: '2' # Limit to 0.5 CPU core
|
||||||
limits:
|
memory: 512M
|
||||||
cpus: '2' # Limit to 0.5 CPU core
|
|
||||||
memory: 512M
|
TicketBox:
|
||||||
|
cap_add:
|
||||||
TicketBox:
|
- NET_ADMIN
|
||||||
env_file:
|
environment:
|
||||||
- media.env
|
- "ENABLE_PRIVOXY=no"
|
||||||
cap_add:
|
- "STRICT_PORT_FORWARD=yes"
|
||||||
- NET_ADMIN
|
- "PGID=0"
|
||||||
environment:
|
- "PUID=0"
|
||||||
- "ENABLE_PRIVOXY=no"
|
- "UMASK=000"
|
||||||
- "STRICT_PORT_FORWARD=yes"
|
- "DEBUG=false"
|
||||||
- "PGID=0"
|
- "NAME_SERVERS=1.1.1.1"
|
||||||
- "PUID=0"
|
- "LAN_NETWORK=192.168.0.0/16,10.0.0.0/8,127.0.0.1/32"
|
||||||
- "UMASK=000"
|
- "VPN_PROV=custom"
|
||||||
- "DEBUG=false"
|
- "VPN_ENABLED=yes"
|
||||||
- "NAME_SERVERS=1.1.1.1"
|
- "DELUGE_ENABLE_WEBUI_PASSWORD=no"
|
||||||
- "LAN_NETWORK=${LAN_NETWORK}"
|
image: "binhex/arch-delugevpn:latest"
|
||||||
- "VPN_PROV=custom"
|
hostname: ticketbox
|
||||||
- "VPN_ENABLED=yes"
|
networks:
|
||||||
- "DELUGE_ENABLE_WEBUI_PASSWORD=no"
|
- traefik_backend
|
||||||
image: "binhex/arch-delugevpn:latest"
|
# ports:
|
||||||
hostname: ticketbox
|
# - target: 58846
|
||||||
networks:
|
# published: 58846
|
||||||
- traefik_backend
|
# protocol: tcp
|
||||||
# ports:
|
# mode: host
|
||||||
# - target: 58846
|
# - target: 58946
|
||||||
# published: 58846
|
# published: 58946
|
||||||
# protocol: tcp
|
# protocol: tcp
|
||||||
# mode: host
|
# mode: host
|
||||||
# - target: 58946
|
# - target: 58946
|
||||||
# published: 58946
|
# published: 58946
|
||||||
# protocol: tcp
|
# protocol: udp
|
||||||
# mode: host
|
# mode: host
|
||||||
# - target: 58946
|
# - target: 8112
|
||||||
# published: 58946
|
# published: 8112
|
||||||
# protocol: udp
|
# protocol: tcp
|
||||||
# mode: host
|
# mode: host
|
||||||
# - target: 8112
|
# - target: 8118
|
||||||
# published: 8112
|
# published: 8118
|
||||||
# protocol: tcp
|
# protocol: tcp
|
||||||
# mode: host
|
# mode: host
|
||||||
# - target: 8118
|
# stdin_open: true
|
||||||
# published: 8118
|
# tty: true
|
||||||
# protocol: tcp
|
volumes:
|
||||||
# mode: host
|
- /volume1/Box Office/Pick up:/pickup
|
||||||
# stdin_open: true
|
- /volume1/docker/Deluge/config:/config
|
||||||
# tty: true
|
- /volume1/Box Office/incomplete:/incomplete
|
||||||
volumes:
|
- /volume1/Box Office/Drop off:/dropoff
|
||||||
- /volume1/Box Office/Pick up:/pickup
|
- /dev/net/tun:/dev/net/tun
|
||||||
- /volume1/docker/Deluge/config:/config
|
healthcheck:
|
||||||
- /volume1/Box Office/incomplete:/incomplete
|
test: curl -fSs http://127.0.0.1:8112 || exit 1
|
||||||
- /volume1/Box Office/Drop off:/dropoff
|
start_period: 120s
|
||||||
- /dev/net/tun:/dev/net/tun
|
timeout: 5s
|
||||||
healthcheck:
|
interval: 5s
|
||||||
test: curl -fSs http://127.0.0.1:8112 || exit 1
|
retries: 3
|
||||||
start_period: 120s
|
deploy:
|
||||||
timeout: 5s
|
labels:
|
||||||
interval: 5s
|
- traefik.enable=true
|
||||||
retries: 3
|
- traefik.http.routers.ticketbox.rule=Host(`ticketbox.bryanmail.net`)
|
||||||
deploy:
|
- traefik.http.routers.ticketbox.tls=true
|
||||||
labels:
|
- traefik.http.routers.ticketbox.tls.certresolver=letsencrypt
|
||||||
- traefik.enable=true
|
- traefik.http.routers.ticketbox.entrypoints=websecure
|
||||||
- traefik.http.routers.ticketbox.rule=Host(`${TICKETBOX_HOST}`)
|
- traefik.http.services.ticketbox.loadbalancer.server.port=8112
|
||||||
- traefik.http.routers.ticketbox.tls=true
|
# - traefik.http.services.ticketbox.loadbalancer.server.scheme=https
|
||||||
- traefik.http.routers.ticketbox.tls.certresolver=letsencrypt
|
- traefik.swarm.network=traefik_backend
|
||||||
- traefik.http.routers.ticketbox.entrypoints=websecure
|
- traefik.http.routers.ticketbox.middlewares=forwardAuth-authentik@file, crowdsec@file
|
||||||
- traefik.http.services.ticketbox.loadbalancer.server.port=8112
|
- autoheal=true
|
||||||
# - traefik.http.services.ticketbox.loadbalancer.server.scheme=https
|
resources:
|
||||||
- traefik.swarm.network=traefik_backend
|
limits:
|
||||||
- traefik.http.routers.ticketbox.middlewares=forwardAuth-authentik@file, crowdsec@file
|
cpus: '2'
|
||||||
- autoheal=true
|
memory: 1G
|
||||||
resources:
|
|
||||||
limits:
|
Jackett:
|
||||||
cpus: '2'
|
entrypoint:
|
||||||
memory: 1G
|
- "/init"
|
||||||
|
environment:
|
||||||
Jackett:
|
- "TZ=PST"
|
||||||
entrypoint:
|
- "PUID=0" #1027
|
||||||
- "/init"
|
- "PGID=0" #100
|
||||||
environment:
|
image: "linuxserver/jackett:latest"
|
||||||
- "TZ=PST"
|
hostname: jackett
|
||||||
- "PUID=${PLEX_PUID}" #1027
|
# restart: "always"
|
||||||
- "PGID=${PLEX_PGID}" #100
|
networks:
|
||||||
image: "linuxserver/jackett:latest"
|
- traefik_backend
|
||||||
hostname: jackett
|
# ports:
|
||||||
# restart: "always"
|
# - target: 9117
|
||||||
networks:
|
# published: 9117
|
||||||
- traefik_backend
|
# protocol: tcp
|
||||||
# ports:
|
# mode: ingress
|
||||||
# - target: 9117
|
stdin_open: true
|
||||||
# published: 9117
|
tty: true
|
||||||
# protocol: tcp
|
volumes:
|
||||||
# mode: ingress
|
- /volume1/docker/Jackett/config:/config
|
||||||
stdin_open: true
|
- /volume1/docker/Jackett/downloads:/downloads
|
||||||
tty: true
|
# healthcheck:
|
||||||
volumes:
|
# test: curl -fSs http://127.0.0.1:9117
|
||||||
- /volume1/docker/Jackett/config:/config
|
# timeout: 5s
|
||||||
- /volume1/docker/Jackett/downloads:/downloads
|
# interval: 5s
|
||||||
# healthcheck:
|
# retries: 3
|
||||||
# test: curl -fSs http://127.0.0.1:9117
|
deploy:
|
||||||
# timeout: 5s
|
endpoint_mode: dnsrr
|
||||||
# interval: 5s
|
labels:
|
||||||
# retries: 3
|
- traefik.enable=true
|
||||||
deploy:
|
# - traefik.frontend.passHostHeader=true
|
||||||
endpoint_mode: dnsrr
|
- traefik.http.routers.jackett-ip.rule=Host(`jackett.bryanmail.net`) && ClientIP(`10.0.1.0/16`)
|
||||||
labels:
|
- traefik.http.routers.jackett-auth.rule=Host(`jackett.bryanmail.net`)
|
||||||
- traefik.enable=true
|
- traefik.http.routers.jackett-ip.tls=true
|
||||||
# - traefik.frontend.passHostHeader=true
|
- traefik.http.routers.jackett-auth.tls=true
|
||||||
- traefik.http.routers.jackett-ip.rule=Host(`${JACKETT_HOST}`) && ClientIP(`10.0.1.0/16`)
|
- traefik.http.routers.jackett-ip.tls.certresolver=letsencrypt
|
||||||
- traefik.http.routers.jackett-auth.rule=Host(`${JACKETT_HOST}`)
|
- traefik.http.routers.jackett-auth.tls.certresolver=letsencrypt
|
||||||
- traefik.http.routers.jackett-ip.tls=true
|
- traefik.http.routers.jackett-ip.entrypoints=websecure
|
||||||
- traefik.http.routers.jackett-auth.tls=true
|
- traefik.http.routers.jackett-auth.entrypoints=websecure
|
||||||
- traefik.http.routers.jackett-ip.tls.certresolver=letsencrypt
|
- traefik.http.services.jackett.loadbalancer.server.port=9117
|
||||||
- traefik.http.routers.jackett-auth.tls.certresolver=letsencrypt
|
# - traefik.http.services.jackett.loadbalancer.server.scheme=https
|
||||||
- traefik.http.routers.jackett-ip.entrypoints=websecure
|
- traefik.swarm.network=traefik_backend
|
||||||
- traefik.http.routers.jackett-auth.entrypoints=websecure
|
# - traefik.http.middlewares.jackett-socket.headers.customrequestheaders.X-Forwarded-Proto=https
|
||||||
- traefik.http.services.jackett.loadbalancer.server.port=9117
|
- traefik.http.routers.jackett-auth.middlewares=forwardAuth-authentik@file, crowdsec@file
|
||||||
# - traefik.http.services.jackett.loadbalancer.server.scheme=https
|
- autoheal=true
|
||||||
- traefik.swarm.network=traefik_backend
|
placement:
|
||||||
# - traefik.http.middlewares.jackett-socket.headers.customrequestheaders.X-Forwarded-Proto=https
|
constraints: [node.role == manager]
|
||||||
- traefik.http.routers.jackett-auth.middlewares=forwardAuth-authentik@file, crowdsec@file
|
resources:
|
||||||
- autoheal=true
|
limits:
|
||||||
placement:
|
cpus: '0.5'
|
||||||
constraints: [node.role == manager]
|
memory: 512M
|
||||||
resources:
|
|
||||||
limits:
|
networks:
|
||||||
cpus: '0.5'
|
postgresql_db-backend:
|
||||||
memory: 512M
|
external: true
|
||||||
|
traefik_backend:
|
||||||
networks:
|
external: true
|
||||||
postgresql_db-backend:
|
host:
|
||||||
external: true
|
external: true
|
||||||
traefik_backend:
|
|
||||||
external: true
|
|
||||||
host:
|
|
||||||
external: true
|
|
||||||
|
|||||||
Reference in New Issue
Block a user