Remove stray blank lines and start every stack with ---
This commit is contained in:
@@ -84,7 +84,6 @@ services:
|
||||
restart: unless-stopped
|
||||
healthcheck:
|
||||
test:
|
||||
|
||||
- CMD-SHELL
|
||||
- pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}
|
||||
start_period: 20s
|
||||
@@ -92,14 +91,12 @@ services:
|
||||
retries: 5
|
||||
timeout: 5s
|
||||
volumes:
|
||||
|
||||
- database:/var/lib/postgresql/data
|
||||
environment:
|
||||
POSTGRES_PASSWORD: ${PG_PASS:?database password required}
|
||||
POSTGRES_USER: ${PG_USER:-authentik}
|
||||
POSTGRES_DB: ${PG_DB:-authentik}
|
||||
env_file:
|
||||
|
||||
- .env
|
||||
|
||||
redis:
|
||||
@@ -109,7 +106,6 @@ services:
|
||||
restart: unless-stopped
|
||||
healthcheck:
|
||||
test:
|
||||
|
||||
- CMD-SHELL
|
||||
- redis-cli ping | grep PONG
|
||||
start_period: 20s
|
||||
@@ -117,7 +113,6 @@ services:
|
||||
retries: 5
|
||||
timeout: 3s
|
||||
volumes:
|
||||
|
||||
- redis:/data
|
||||
|
||||
server:
|
||||
@@ -132,19 +127,15 @@ services:
|
||||
AUTHENTIK_POSTGRESQL__NAME: ${PG_DB:-authentik}
|
||||
AUTHENTIK_POSTGRESQL__PASSWORD: ${PG_PASS}
|
||||
volumes:
|
||||
|
||||
- ./media:/media
|
||||
- ./custom-templates:/templates
|
||||
- ./ssh:/authentik/.ssh
|
||||
env_file:
|
||||
|
||||
- .env
|
||||
ports:
|
||||
|
||||
- ${COMPOSE_PORT_HTTP:-9000}:9000
|
||||
- ${COMPOSE_PORT_HTTPS:-9443}:9443
|
||||
depends_on:
|
||||
|
||||
- postgresql
|
||||
- redis
|
||||
|
||||
@@ -167,17 +158,14 @@ services:
|
||||
# (1000:1000 by default)
|
||||
user: root
|
||||
volumes:
|
||||
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- ./media:/media
|
||||
- ./certs:/certs
|
||||
- ./custom-templates:/templates
|
||||
- ./ssh:/authentik/.ssh
|
||||
env_file:
|
||||
|
||||
- .env
|
||||
depends_on:
|
||||
|
||||
- postgresql
|
||||
- redis
|
||||
|
||||
@@ -287,6 +275,7 @@ Save with :kbd{value="Ctrl+O"}, then :kbd{value="Enter"}, and exit with :kbd{val
|
||||
Go to Dockge, and edit the SWAG compose file to add the Authentik network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
@@ -467,6 +456,7 @@ sudo nano /docker/authentik-outpost/compose.yaml
|
||||
Paste the following configuration, updating the version in `{AUTHENTIK_TAG:proxy:2024.2.3}`{lang=properties} to match your Authentik server version.
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
version: "3.5"
|
||||
services:
|
||||
authentik_proxy:
|
||||
@@ -476,10 +466,8 @@ services:
|
||||
# might be needed to reach the core authentik server
|
||||
restart: unless-stopped
|
||||
env_file:
|
||||
|
||||
- .env
|
||||
ports:
|
||||
|
||||
- 9000:9000
|
||||
- 9443:9443
|
||||
environment:
|
||||
@@ -497,6 +485,7 @@ sudo nano /docker/swag/compose.yaml
|
||||
```
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: #...
|
||||
|
||||
@@ -97,16 +97,13 @@ services:
|
||||
restart: unless-stopped
|
||||
container_name: dockge
|
||||
ports:
|
||||
|
||||
- 3555:5001 # LAN-accessible port will be 3555
|
||||
|
||||
volumes:
|
||||
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- /docker/dockge/data:/app/data
|
||||
- /docker:/docker
|
||||
environment:
|
||||
|
||||
- DOCKGE_STACKS_DIR=/docker
|
||||
```
|
||||
|
||||
@@ -149,10 +146,8 @@ services:
|
||||
image: ghcr.io/nicholas-fedor/watchtower:latest
|
||||
restart: unless-stopped
|
||||
env_file:
|
||||
|
||||
- .env
|
||||
environment:
|
||||
|
||||
- TZ=Europe/Paris
|
||||
- WATCHTOWER_SCHEDULE=${SCHEDULE}
|
||||
- WATCHTOWER_LABEL_ENABLE=true
|
||||
@@ -163,7 +158,6 @@ services:
|
||||
#- WATCHTOWER_NOTIFICATION_SLACK_IDENTIFIER=Watchtower
|
||||
#- WATCHTOWER_NOTIFICATION_SLACK_HOOK_URL=${WH_URL}
|
||||
volumes:
|
||||
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
```
|
||||
|
||||
@@ -186,6 +180,7 @@ WH_URL=
|
||||
To have Watchtower monitor your other containers, add this to their `compose.yml`:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
labels:
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
|
||||
@@ -58,13 +58,10 @@ services:
|
||||
image: lscr.io/linuxserver/swag:latest
|
||||
container_name: swag
|
||||
cap_add:
|
||||
|
||||
- NET_ADMIN
|
||||
env_file:
|
||||
|
||||
- .env
|
||||
environment:
|
||||
|
||||
- TZ=Europe/Paris
|
||||
- URL=${DOMAIN}
|
||||
- EXTRA_DOMAINS=${DOMAINS}
|
||||
@@ -74,16 +71,13 @@ services:
|
||||
- EMAIL=${EMAIL}
|
||||
- DOCKER_MODS=linuxserver/mods:swag-dbip|linuxserver/mods:swag-dashboard|linuxserver/mods:swag-auto-reload
|
||||
volumes:
|
||||
|
||||
- /docker/swag/config:/config
|
||||
ports:
|
||||
|
||||
- 80:80
|
||||
- 443:443
|
||||
- 81:81
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
|
||||
- swag
|
||||
|
||||
networks:
|
||||
@@ -96,11 +90,11 @@ networks:
|
||||
Add the watchtower label to each container to enable automatic updates
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
#...
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
::
|
||||
@@ -361,6 +355,7 @@ By default, SWAG doesn’t recognize the name "dockge". You’ll need to add Doc
|
||||
Go to the SWAG stack, click `edit`, and modify the config file like this (note the `networks` section):
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: #...
|
||||
|
||||
@@ -78,7 +78,6 @@ Copy the following configuration:
|
||||
services:
|
||||
wg-easy:
|
||||
environment:
|
||||
|
||||
- INSECURE=true
|
||||
image: ghcr.io/wg-easy/wg-easy:15
|
||||
container_name: wg-easy
|
||||
@@ -87,20 +86,16 @@ services:
|
||||
ipv4_address: 10.42.42.42
|
||||
ipv6_address: fdcc:ad94:bacf:61a3::2a
|
||||
volumes:
|
||||
|
||||
- ./etc_wireguard:/etc/wireguard
|
||||
- /lib/modules:/lib/modules:ro
|
||||
ports:
|
||||
|
||||
- "51820:51820/udp"
|
||||
- "51821:51821/tcp"
|
||||
restart: unless-stopped
|
||||
cap_add:
|
||||
|
||||
- NET_ADMIN
|
||||
- SYS_MODULE
|
||||
sysctls:
|
||||
|
||||
- net.ipv4.ip_forward=1
|
||||
- net.ipv4.conf.all.src_valid_mark=1
|
||||
- net.ipv6.conf.all.disable_ipv6=0
|
||||
@@ -114,7 +109,6 @@ networks:
|
||||
ipam:
|
||||
driver: default
|
||||
config:
|
||||
|
||||
- subnet: 10.42.42.0/24
|
||||
- subnet: fdcc:ad94:bacf:61a3::/64
|
||||
```
|
||||
@@ -126,11 +120,11 @@ networks:
|
||||
- Add a Watchtower label for automatic updates:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
wg-easy:
|
||||
# ...
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
::
|
||||
@@ -236,20 +230,18 @@ sudo cp ~/wg0.conf /docker/wireguard/config/wg_confs
|
||||
Create the `compose.yaml` file in `/docker/wireguard`:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
wireguard:
|
||||
image: lscr.io/linuxserver/wireguard:latest
|
||||
container_name: wireguard
|
||||
network_mode: host
|
||||
cap_add:
|
||||
|
||||
- NET_ADMIN
|
||||
- SYS_MODULE
|
||||
environment:
|
||||
|
||||
- TZ=Europe/Paris
|
||||
volumes:
|
||||
|
||||
- /docker/wireguard/config:/config
|
||||
- /lib/modules:/lib/modules
|
||||
restart: unless-stopped
|
||||
|
||||
@@ -90,7 +90,6 @@ Paste:
|
||||
|
||||
```yaml [tunnelconfig.yml]
|
||||
ingress:
|
||||
|
||||
- hostname: mondomaine.fr
|
||||
service: https://mondomaine.fr
|
||||
|
||||
@@ -134,13 +133,10 @@ services:
|
||||
image: lscr.io/linuxserver/swag:latest
|
||||
container_name: swag
|
||||
cap_add:
|
||||
|
||||
- NET_ADMIN
|
||||
env_file:
|
||||
|
||||
- .env
|
||||
environment:
|
||||
|
||||
- DOCKER_MODS=linuxserver/mods:swag-dbip|linuxserver/mods:swag-dashboard|linuxserver/mods:swag-auto-reload|linuxserver/mods:universal-cloudflared|linuxserver/mods:swag-cloudflare-real-ip
|
||||
- PUID=${PUID}
|
||||
- PGID=${PGID}
|
||||
@@ -157,13 +153,10 @@ services:
|
||||
- CF_TUNNEL_PASSWORD=${TUNNEL_PW}
|
||||
- FILE__CF_TUNNEL_CONFIG=/config/tunnelconfig.yml
|
||||
extra_hosts:
|
||||
|
||||
- ${DOMAIN}:127.0.0.1
|
||||
ports:
|
||||
|
||||
- 81:81
|
||||
volumes:
|
||||
|
||||
- /docker/swag/config:/config
|
||||
- /docker/swag/config/fail2ban/fail2ban.sqlite3:/dashboard/fail2ban.sqlite3:ro
|
||||
restart: unless-stopped
|
||||
@@ -173,8 +166,8 @@ services:
|
||||
✨ __Tip:__ Add a Watchtower label to automate updates:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
::
|
||||
|
||||
@@ -56,10 +56,8 @@ services:
|
||||
env_file:
|
||||
- .env
|
||||
volumes:
|
||||
|
||||
- /docker/pocket-id/data:/app/data
|
||||
ports:
|
||||
|
||||
- 1411:1411
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:1411/healthz"]
|
||||
@@ -72,11 +70,11 @@ services:
|
||||
✨ Add the Watchtower label to automate updates:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
pocket-id:
|
||||
#...
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
::
|
||||
@@ -127,6 +125,7 @@ We assume you have the subdomain `id.mydomain.com` with a `CNAME` pointing to `m
|
||||
Go to Dockge and edit SWAG's compose file by adding Pocket ID's network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -62,13 +62,10 @@ services:
|
||||
container_name: tinyauth
|
||||
restart: unless-stopped
|
||||
env_file:
|
||||
|
||||
- .env
|
||||
volumes:
|
||||
|
||||
- /docker/tinyauth/data:/data
|
||||
ports:
|
||||
|
||||
- 3000:3000
|
||||
```
|
||||
|
||||
@@ -76,11 +73,11 @@ services:
|
||||
✨ Add the Watchtower label to automate updates:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
tinyauth:
|
||||
#...
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
::
|
||||
@@ -118,6 +115,7 @@ We assume you have the subdomain `tinyauth.mydomain.com` with a `CNAME` pointing
|
||||
Go to Dockge and edit SWAG's compose file by adding TinyAuth's network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -33,10 +33,8 @@ services:
|
||||
image: louislam/uptime-kuma:2-slim
|
||||
container_name: uptime-kuma
|
||||
volumes:
|
||||
|
||||
- /docker/uptime-kuma/uptime-kuma-data:/app/data
|
||||
ports:
|
||||
|
||||
- 3200:3001 # <Host Port>:<Container Port>
|
||||
restart: always
|
||||
```
|
||||
@@ -151,6 +149,7 @@ Press :kbd{value="Ctrl+O"}, then :kbd{value="Enter"} to save, and :kbd{value="Ct
|
||||
In Dockge, edit the SWAG compose and add the Uptime-Kuma network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -43,7 +43,6 @@ services:
|
||||
environment:
|
||||
- DOZZLE_HOSTNAME=${DOMAIN}
|
||||
volumes:
|
||||
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
```
|
||||
|
||||
@@ -94,6 +93,7 @@ We assume you have created a subdomain like `dozzle.mydomain.com` in your [DNS z
|
||||
Go to Dockge and edit the SWAG compose file to add Dozzle’s network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -60,10 +60,8 @@ services:
|
||||
restart: unless-stopped
|
||||
container_name: speedtest-tracker
|
||||
ports:
|
||||
|
||||
- ${PORT}:80
|
||||
environment:
|
||||
|
||||
- PUID=${PUID}
|
||||
- PGID=${GUID}
|
||||
- TZ=Europe/Paris
|
||||
@@ -71,7 +69,6 @@ services:
|
||||
- DB_CONNECTION=sqlite
|
||||
- SPEEDTEST_SCHEDULE=${SCHEDULE}
|
||||
volumes:
|
||||
|
||||
- /docker/speedtest-tracker/data/config:/config
|
||||
```
|
||||
|
||||
@@ -181,6 +178,7 @@ By default, SWAG doesn’t know the name "speedtest-tracker". To allow access, y
|
||||
Go to Dockge, and edit SWAG’s compose to include Speedtest Tracker’s network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -47,10 +47,8 @@ services:
|
||||
container_name: beszel
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
|
||||
- ${PORT}:8090
|
||||
volumes:
|
||||
|
||||
- ./data:/beszel_data
|
||||
- ./socket:/beszel_socket
|
||||
|
||||
@@ -60,7 +58,6 @@ services:
|
||||
restart: unless-stopped
|
||||
network_mode: host
|
||||
volumes:
|
||||
|
||||
- ./socket:/beszel_socket
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
environment:
|
||||
@@ -73,11 +70,11 @@ services:
|
||||
✨ __Tip:__ Add the Watchtower label to each container to automate updates.
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
beszel:
|
||||
#...
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
::
|
||||
@@ -127,7 +124,6 @@ services:
|
||||
restart: unless-stopped
|
||||
network_mode: host
|
||||
volumes:
|
||||
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
environment:
|
||||
LISTEN: ${PORT}
|
||||
@@ -166,6 +162,7 @@ You must have created a DNS subdomain like `beszel.mydomain.com` with a `CNAME`
|
||||
In Dockge, edit Swag's compose file and add Beszel’s network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -43,16 +43,13 @@ services:
|
||||
network_mode: host
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
|
||||
- /docker/upsnap/data:/app/pb_data
|
||||
environment:
|
||||
|
||||
- TZ=Europe/Paris
|
||||
- UPSNAP_SCAN_RANGE=${SCAN_RANGE}
|
||||
- UPSNAP_SCAN_TIMEOUT=500ms
|
||||
- UPSNAP_PING_PRIVILEGED=true
|
||||
dns:
|
||||
|
||||
- ${DNS}
|
||||
entrypoint: /bin/sh -c "./upsnap serve --http 0.0.0.0:8095"
|
||||
healthcheck:
|
||||
@@ -105,6 +102,7 @@ We assume you've created a subdomain in your [DNS zone](/general/networking/dns)
|
||||
Go to Dockge, and edit the SWAG compose by adding the UpSnap network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -58,20 +58,16 @@ services:
|
||||
image: lscr.io/linuxserver/jellyfin:latest
|
||||
container_name: jellyfin
|
||||
environment:
|
||||
|
||||
- PUID=${PUID}
|
||||
- PGID=${GUID}
|
||||
- TZ=Europe/Paris
|
||||
volumes:
|
||||
|
||||
- /docker/jellyfin/config:/config
|
||||
- /media:/media
|
||||
restart: unless-stopped
|
||||
devices:
|
||||
|
||||
- /dev/dri:/dev/dri
|
||||
ports:
|
||||
|
||||
- 8096:8096
|
||||
```
|
||||
|
||||
@@ -79,11 +75,11 @@ services:
|
||||
✨ Add the Watchtower label to automate updates:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
jellyfin:
|
||||
#...
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
::
|
||||
@@ -133,6 +129,7 @@ We assume you have the subdomain `jellyfin.mydomain.com` with a `CNAME` pointing
|
||||
Go to Dockge and edit SWAG's compose file by adding Jellyfin's network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -57,7 +57,7 @@ mkdir -P /media/downloads
|
||||
Open Dockge, click on `compose`, and name the stack `seedbox`. Paste the following config:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
|
||||
---
|
||||
services:
|
||||
qbit:
|
||||
image: ghcr.io/linuxserver/qbittorrent:libtorrentv1
|
||||
@@ -66,7 +66,6 @@ services:
|
||||
network_mode: service:gluetun
|
||||
mem_limit: 4g
|
||||
environment:
|
||||
|
||||
- DOCKER_MODS=ghcr.io/gabe565/linuxserver-mod-vuetorrent|ghcr.io/t-anc/gsp-qbittorent-gluetun-sync-port-mod:main
|
||||
- TZ=Europe/Paris
|
||||
- PUID=${PUID}
|
||||
@@ -76,11 +75,9 @@ services:
|
||||
- GSP_QBT_USERNAME=${ID}
|
||||
- GSP_QBT_PASSWORD=${PW}
|
||||
volumes:
|
||||
|
||||
- /docker/seedbox/qbittorrent/config:/config
|
||||
- /media:/media
|
||||
depends_on:
|
||||
|
||||
- gluetun
|
||||
|
||||
gluetun:
|
||||
@@ -89,20 +86,15 @@ services:
|
||||
restart: unless-stopped
|
||||
mem_limit: 4g
|
||||
volumes:
|
||||
|
||||
- /docker/gluetun/config.toml:/gluetun/auth/config.toml:ro
|
||||
devices:
|
||||
|
||||
- /dev/net/tun:/dev/net/tun
|
||||
ports:
|
||||
|
||||
- ${UI_PORT}:5695 # Port de la web-ui
|
||||
- 8000:8000 # Port de controle de Gluetun
|
||||
cap_add:
|
||||
|
||||
- NET_ADMIN
|
||||
environment:
|
||||
|
||||
- TZ=Europe/Paris
|
||||
- VPN_SERVICE_PROVIDER=protonvpn
|
||||
- VPN_PORT_FORWARDING=on
|
||||
@@ -117,16 +109,15 @@ services:
|
||||
✨ __Tip:__ Add the Watchtower label in each container to automate updates
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
qbittorrent:
|
||||
#...
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
gluetun:
|
||||
#...
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
::
|
||||
@@ -229,6 +220,7 @@ We assume you have the subdomain `seedbox.mydomain.com` with a `CNAME` pointing
|
||||
In Dockge, edit the SWAG compose file and add Gluetun’s network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -70,36 +70,29 @@ services:
|
||||
image: lscr.io/linuxserver/jellyfin:latest
|
||||
container_name: jellyfin
|
||||
environment:
|
||||
|
||||
- PUID=${PUID}
|
||||
- PGID=${PGID}
|
||||
- TZ=Europe/Paris
|
||||
volumes:
|
||||
|
||||
- /docker/jellyfin/config:/config
|
||||
- ${MEDIA_PATH}:/media
|
||||
restart: unless-stopped
|
||||
devices:
|
||||
|
||||
- /dev/dri:/dev/dri
|
||||
ports:
|
||||
|
||||
- 8096:8096
|
||||
|
||||
sonarr:
|
||||
image: lscr.io/linuxserver/sonarr:latest
|
||||
container_name: sonarr
|
||||
environment:
|
||||
|
||||
- PUID=${PUID}
|
||||
- PGID=${PGID}
|
||||
- TZ=Europe/Paris
|
||||
volumes:
|
||||
|
||||
- /docker/sonarr/config:/config
|
||||
- ${MEDIA_PATH}:/media
|
||||
ports:
|
||||
|
||||
- 8989:8989
|
||||
restart: unless-stopped
|
||||
|
||||
@@ -107,16 +100,13 @@ services:
|
||||
image: lscr.io/linuxserver/radarr:latest
|
||||
container_name: radarr
|
||||
environment:
|
||||
|
||||
- PUID=${PUID}
|
||||
- PGID=${PGID}
|
||||
- TZ=Europe/Paris
|
||||
volumes:
|
||||
|
||||
- /docker/radarr/config:/config
|
||||
- ${MEDIA_PATH}:/media
|
||||
ports:
|
||||
|
||||
- 7878:7878
|
||||
restart: unless-stopped
|
||||
|
||||
@@ -124,15 +114,12 @@ services:
|
||||
image: lscr.io/linuxserver/prowlarr:latest
|
||||
container_name: prowlarr
|
||||
environment:
|
||||
|
||||
- PUID=${PUID}
|
||||
- PGID=${PGID}
|
||||
- TZ=Europe/Paris
|
||||
volumes:
|
||||
|
||||
- /docker/prowlarr/data:/config
|
||||
ports:
|
||||
|
||||
- 9696:9696
|
||||
restart: unless-stopped
|
||||
|
||||
@@ -140,14 +127,11 @@ services:
|
||||
image: ghcr.io/seerr-team/seerr:latest
|
||||
container_name: seerr
|
||||
environment:
|
||||
|
||||
- LOG_LEVEL=info
|
||||
- TZ=Europe/Paris
|
||||
volumes:
|
||||
|
||||
- /docker/seerr/config:/app/config
|
||||
ports:
|
||||
|
||||
- 5055:5055
|
||||
restart: unless-stopped
|
||||
|
||||
@@ -156,16 +140,13 @@ services:
|
||||
container_name: bazarr
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Europe/Paris
|
||||
volumes:
|
||||
|
||||
- /docker/bazarr/config:/config
|
||||
- ${MEDIA_PATH}:/media
|
||||
ports:
|
||||
|
||||
- 6767:6767
|
||||
```
|
||||
|
||||
@@ -173,11 +154,11 @@ services:
|
||||
✨ Add the Watchtower label to each container to automate updates
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
jellyfin:
|
||||
#...
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
::
|
||||
@@ -403,6 +384,7 @@ We assume you have the subdomain `films.mydomain.com` with a `CNAME` pointing to
|
||||
Go to Dockge, edit the SWAG compose file, and add the Seerr network, which is the same as Jellyfin (since it’s in the Jellyfin stack):
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -63,6 +63,7 @@ We assume that you have a subdomain `immich.yourdomain.com` with a `CNAME` point
|
||||
In Dockge, open the SWAG stack and edit the compose file to add Immich's network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -43,16 +43,13 @@ services:
|
||||
image: lscr.io/linuxserver/nextcloud:latest
|
||||
container_name: nextcloud
|
||||
environment:
|
||||
|
||||
- PUID=${PUID}
|
||||
- PGID=${GUID}
|
||||
- TZ=Etc/UTC
|
||||
volumes:
|
||||
|
||||
- /docker/nextcloud/config:/config
|
||||
- /docker/nextcloud/data:/data
|
||||
ports:
|
||||
|
||||
- ${PORT}:443
|
||||
restart: unless-stopped
|
||||
```
|
||||
@@ -94,6 +91,7 @@ We assume you have a subdomain `nextcloud.yourdomain.com` with a `CNAME` pointin
|
||||
In Dockge, go to your SWAG stack and edit the compose to add Nextcloud's network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -29,10 +29,8 @@ services:
|
||||
image: stonith404/pingvin-share
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
|
||||
- 3600:3000
|
||||
volumes:
|
||||
|
||||
- /docker/pingvin/data:/opt/app/backend/data
|
||||
- /docker/pingvin/data/img:/opt/app/frontend/public/img
|
||||
- /docker/pingvin/uploads:/opt/app/backend/uploads # path to the folder where you want to store files uploaded to pingvin. Change to your preference.
|
||||
@@ -40,7 +38,6 @@ services:
|
||||
clamav:
|
||||
condition: service_healthy
|
||||
networks:
|
||||
|
||||
- swag
|
||||
|
||||
clamav: #antivirus for the files
|
||||
@@ -89,6 +86,7 @@ We assume you have the subdomain `pingvin.mydomain.com` with a `CNAME` pointing
|
||||
In Dockge, go to the SWAG stack and edit the compose file to add the pingvin network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -71,12 +71,10 @@ services:
|
||||
image: gtstef/filebrowser:beta
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
|
||||
- /docker:/docker
|
||||
- /media:/media
|
||||
- /docker/filebrowser-quantum/data:/home/filebrowser/data
|
||||
ports:
|
||||
|
||||
- 8020:80
|
||||
```
|
||||
|
||||
@@ -122,6 +120,7 @@ __Pre-requisite:__ We assume you've already created a subdomain like `fbq.yourdo
|
||||
In Dockge, go to the SWAG stack and edit the compose file to add File Browser Quantum's network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -47,18 +47,15 @@ services:
|
||||
image: lscr.io/linuxserver/code-server:latest
|
||||
container_name: code-server
|
||||
environment:
|
||||
|
||||
- PUID=${PUID}
|
||||
- PGID=${GUID}
|
||||
- TZ=Etc/UTC
|
||||
- HASHED_PASSWORD=${PW}
|
||||
volumes:
|
||||
|
||||
- /docker/code-server/config:/config
|
||||
# add folders to mount in VS Code
|
||||
# - /path/to/folder:/folder
|
||||
ports:
|
||||
|
||||
- 8443:8443
|
||||
restart: unless-stopped
|
||||
```
|
||||
@@ -112,11 +109,11 @@ __If it fails:__ check your firewall rules.
|
||||
You can mount folders into VS Code by adding the relevant volumes in `compose.yaml` (or via Dockge), then redeploy the container.
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
code-server:
|
||||
#...
|
||||
volumes:
|
||||
|
||||
- /path/to/folder:/folder
|
||||
```
|
||||
Once inside VS Code, you'll have access to the mounted folder.
|
||||
@@ -132,6 +129,7 @@ __Preliminary:__ We assume you’ve created a subdomain like `code.yourdomain.co
|
||||
In Dockge, go to the SWAG stack and edit the compose file to add code-server’s network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -42,19 +42,15 @@ services:
|
||||
image: codeberg.org/forgejo/forgejo:11
|
||||
container_name: forgejo
|
||||
environment:
|
||||
|
||||
- USER_UID=${UID}
|
||||
- USER_GID=${GID}
|
||||
- TZ=Europe/Paris
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
|
||||
- forgejo
|
||||
volumes:
|
||||
|
||||
- ./data:/data
|
||||
ports:
|
||||
|
||||
- 3333:3000
|
||||
- 222:22
|
||||
```
|
||||
@@ -84,6 +80,7 @@ __Prerequisite:__ We assume you have created a subdomain such as `forgejo.yourdo
|
||||
In Dockge, go to the SWAG stack and edit the compose file by adding Forgejo's network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -30,7 +30,6 @@ services:
|
||||
restart: unless-stopped
|
||||
image: corentinth/it-tools:latest
|
||||
ports:
|
||||
|
||||
- 3222:80
|
||||
```
|
||||
|
||||
@@ -65,6 +64,7 @@ __Pre-requisite:__ We assume you’ve created a subdomain like `tools.yourdomain
|
||||
In Dockge, go to the SWAG stack and edit the compose file to add the IT Tools network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -69,14 +69,12 @@ services:
|
||||
image: adguard/adguardhome
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
|
||||
- 53:53/udp
|
||||
- 8080:80/tcp
|
||||
- 4443:443/tcp
|
||||
- 853:853/tcp
|
||||
- 3000:3000/tcp
|
||||
volumes:
|
||||
|
||||
- /docker/adguardhome/confdir:/opt/adguardhome/conf
|
||||
- /docker/adguardhome/workdir:/opt/adguardhome/work
|
||||
- /docker/swag/config/etc/letsencrypt:/swag-ssl:ro
|
||||
@@ -86,11 +84,11 @@ services:
|
||||
✨ __Tip:__ Add the watchtower label to each container to automate updates
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
adguardhome:
|
||||
# ...
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
::
|
||||
@@ -117,6 +115,7 @@ Do not use Cloudflare tunnels to expose AdGuard, and make sure any proxying is d
|
||||
In Dockge, go to the SWAG stack and edit the compose file to add the AdGuard network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
@@ -41,16 +41,12 @@ services:
|
||||
image: vaultwarden/server:latest
|
||||
restart: unless-stopped
|
||||
env_file:
|
||||
|
||||
- .env
|
||||
volumes:
|
||||
|
||||
- ./data/:/data/
|
||||
ports:
|
||||
|
||||
- 3050:80
|
||||
environment:
|
||||
|
||||
- DOMAIN=${URL}
|
||||
- LOGIN_RATELIMIT_MAX_BURST=10
|
||||
- LOGIN_RATELIMIT_SECONDS=60
|
||||
@@ -70,11 +66,11 @@ services:
|
||||
✨ __Tip:__ Add the Watchtower label in each container to automate updates
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
vaultwarden:
|
||||
#...
|
||||
labels:
|
||||
|
||||
- com.centurylinklabs.watchtower.enable=true
|
||||
```
|
||||
::
|
||||
@@ -118,6 +114,7 @@ The main benefit of Vaultwarden is being able to access it remotely from any dev
|
||||
In Dockge, go to the SWAG stack and edit the compose file to add the Vaultwarden network:
|
||||
|
||||
```yaml [compose.yaml]
|
||||
---
|
||||
services:
|
||||
swag:
|
||||
container_name: # ...
|
||||
|
||||
Reference in New Issue
Block a user