blob: 6277bddc54ec9240e48a88b5efeef9b7693ab3b3 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
|
services:
gluetun:
image: qmcgaw/gluetun:latest
container_name: gluetun
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun:/dev/net/tun
environment:
- VPN_SERVICE_PROVIDER=${VPN_SERVICE_PROVIDER}
- VPN_TYPE=${VPN_TYPE}
- WIREGUARD_PRIVATE_KEY=${WIREGUARD_PRIVATE_KEY}
- WIREGUARD_ADDRESSES=${WIREGUARD_ADDRESSES}
- SERVER_CITIES=${SERVER_CITIES}
- FIREWALL_INPUT_PORTS=8123
- TZ=${TZ}
volumes:
- ./config/gluetun:/gluetun
networks:
- media
restart: unless-stopped
qbittorrent:
image: lscr.io/linuxserver/qbittorrent:latest
container_name: qbittorrent
network_mode: "service:gluetun"
depends_on:
- gluetun
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TZ}
- WEBUI_PORT=8123
volumes:
- /volume2/docker/linuxserver_qbittorrent-1/config:/config
- ${DOWNLOADS_PATH}:/downloads
restart: unless-stopped
jellyfin:
image: lscr.io/linuxserver/jellyfin:latest
container_name: jellyfin
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TZ}
volumes:
- /volume2/docker/jellyfin/config:/config
- ${MOVIES_PATH}:/movies
- ${TV_PATH}:/shows
devices:
- /dev/dri:/dev/dri
ports:
- "${LAN_IP}:8096:8096"
networks:
- media
restart: unless-stopped
radarr:
image: lscr.io/linuxserver/radarr:latest
container_name: radarr
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TZ}
volumes:
- /volume2/docker/radarr:/config
- ${MOVIES_PATH}:/movies
- ${DOWNLOADS_PATH}:/downloads
networks:
- media
restart: unless-stopped
sonarr:
image: lscr.io/linuxserver/sonarr:latest
container_name: sonarr
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TZ}
volumes:
- /volume2/docker/sonarr:/config
- ${TV_PATH}:/tv
- ${DOWNLOADS_PATH}:/downloads
networks:
- media
restart: unless-stopped
prowlarr:
image: lscr.io/linuxserver/prowlarr:latest
container_name: prowlarr
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TZ}
volumes:
- /volume2/docker/prowlarr:/config
networks:
- media
restart: unless-stopped
bazarr:
image: lscr.io/linuxserver/bazarr:latest
container_name: bazarr
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=${TZ}
volumes:
- /volume2/docker/bazarr:/config
- ${MOVIES_PATH}:/movies
- ${TV_PATH}:/tv
networks:
- media
restart: unless-stopped
caddy:
build: ./caddy
container_name: caddy
ports:
- "${TS_IP}:443:443"
environment:
- GANDI_BEARER_TOKEN=${GANDI_BEARER_TOKEN}
- DOMAIN=${DOMAIN}
volumes:
- ./caddy/Caddyfile:/etc/caddy/Caddyfile:ro
- caddy_data:/data
- caddy_config:/config
extra_hosts:
- "host.docker.internal:host-gateway"
networks:
- media
depends_on:
- jellyfin
- radarr
- sonarr
- prowlarr
- bazarr
- gluetun
restart: unless-stopped
networks:
media:
driver: bridge
volumes:
caddy_data:
caddy_config:
|