Remove stray blank lines and start every stack with ---

This commit is contained in:
Djeex
2026-09-02 23:42:00 +02:00
parent 8ca6bec943
commit 8b2073474d
57 changed files with 78 additions and 347 deletions
@@ -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: #...
+1 -6
View File
@@ -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
```
+2 -7
View File
@@ -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 doesnt recognize the name "dockge". Youll 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: #...
+2 -10
View File
@@ -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 Dozzles 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 doesnt know the name "speedtest-tracker". To allow access, y
Go to Dockge, and edit SWAGs compose to include Speedtest Trackers 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 Beszels 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: # ...
+2 -5
View File
@@ -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: # ...
+3 -11
View File
@@ -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 Gluetuns network:
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
+2 -20
View File
@@ -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 its in the Jellyfin stack):
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
+1
View File
@@ -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: # ...
+1 -3
View File
@@ -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: # ...
+1 -3
View File
@@ -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 youve created a subdomain like `code.yourdomain.co
In Dockge, go to the SWAG stack and edit the compose file to add code-servers 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 youve 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: # ...
+2 -3
View File
@@ -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: # ...
+2 -5
View File
@@ -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: # ...
+1 -11
View File
@@ -30,42 +30,36 @@ In short:
For example, with Beszel, the configuration would look like this:
```yaml [compose.yaml]
---
services:
socat-proxy:
image: git.djeex.fr/djeex/socat-proxy:latest
container_name: socat-proxy-beszel
environment:
- TARGET_HOST=${TARGET_HOST}
- TARGET_PORT=${TARGET_PORT}
- UNIX_SOCKET_PATH=${UNIX_SOCKET_PATH}
- HOST_SOCKET_PATH=${HOST_SOCKET_PATH}
- UNIX_SOCKET_NAME=${UNIX_SOCKET_NAME}
volumes:
- ${HOST_SOCKET_PATH}:${UNIX_SOCKET_PATH}
restart: unless-stopped
depends_on:
- ${TARGET_HOST}
socket-proxy:
image: lscr.io/linuxserver/socket-proxy:latest
container_name: ${TARGET_HOST}
security_opt:
- no-new-privileges:true
environment:
- CONTAINERS=1
- INFO=1
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
restart: unless-stopped
read_only: true
tmpfs:
- /run
beszel-agent:
@@ -74,16 +68,12 @@ services:
restart: unless-stopped
network_mode: host
security_opt:
- no-new-privileges:true
volumes:
- ${HOST_SOCKET_PATH}/${UNIX_SOCKET_NAME}:/var/run/docker.sock:ro
environment:
- #... your Beszel environment variables
depends_on:
- socat-proxy
```
@@ -35,41 +35,32 @@ services:
container_name: backrest
hostname: backrest
security_opt:
- no-new-privileges:true
volumes:
- ... # your volumes
environment:
- ... # your environment variables
- DOCKER_HOST=tcp://socket-proxy-backrest:2375
restart: unless-stopped
ports:
- ... # your ports
depends_on:
- socket-proxy
socket-proxy:
image: lscr.io/linuxserver/socket-proxy:latest
container_name: socket-proxy-backrest
security_opt:
- no-new-privileges:true
environment:
- CONTAINERS=1
- ALLOW_START=1
- ALLOW_STOP=1
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
restart: unless-stopped
read_only: true
tmpfs:
- /run
```
@@ -110,11 +101,11 @@ sleep 10
Once the scripts are in place and configured for the proper **Backrest** hooks, you just need to add the label `backrest.backup.stop=true` to the `compose.yaml` files of the containers that should stop and restart during backups:
```yaml [compose.yaml]
---
services:
your_service:
...
labels:
- backrest.backup.stop=true
```
@@ -84,10 +84,8 @@ services:
wg-easy:
network_mode: host
env_file:
- .env
environment:
- LANG=en
- WG_HOST=${HOST}
- PASSWORD_HASH=${PW}
@@ -100,11 +98,9 @@ services:
image: ghcr.io/wg-easy/wg-easy:14
container_name: wg-easy
volumes:
- /docker/wg_easy/config/etc_wireguard:/etc/wireguard
restart: unless-stopped
cap_add:
- NET_ADMIN
- SYS_MODULE
```
@@ -116,11 +112,11 @@ services:
- Add the Watchtower label to enable automatic updates
```yaml [compose.yaml]
---
services:
wg-easy:
#...
labels:
- com.centurylinklabs.watchtower.enable=true
```
::
@@ -213,20 +209,18 @@ sudo nano /docker/wireguard/compose.yaml
Paste:
```yaml [compose.yaml]
---
services:
wireguard:
image: lscr.io/linuxserver/wireguard:latest
container_name: wireguard
network_mode: host
cap_add:
- NET_ADMIN
- SYS_MODULE #optional
environment:
- TZ=Europe/Paris
volumes:
- /docker/wireguard/config:/config
- /lib/modules:/lib/modules #optional
restart: unless-stopped
@@ -27,11 +27,9 @@ services:
filebrowser:
container_name: filebrowser
volumes:
- /docker/filebrowser/config:/config/
- /path/to/your/folders:/yourfolders #add your folders to browse as /docker:/docker for exemple
ports:
- 8010:80
image: filebrowser/filebrowser:s6
```
@@ -73,6 +71,7 @@ __Pre-requisite:__ We assume you've already created a subdomain like `files.your
In Dockge, go to the SWAG stack and edit the compose file to add File Browsers network:
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -69,13 +69,11 @@ services:
container_name: plex
network_mode: host
environment:
- PUID=${PUID}
- PGID=${GUID}
- TZ=Europe/Paris
- VERSION=docker
volumes:
- /docker/plex/config:/config
- /docker/plex/transcode:/transcode
- /media:/media
@@ -83,22 +81,18 @@ services:
mem_limit: 4096m
mem_reservation: 2048m
devices:
- /dev/dri:/dev/dri
tautulli:
image: lscr.io/linuxserver/tautulli:latest
container_name: tautulli
environment:
- PUID=${PUID}
- PGID=${GUID}
- TZ=Europe/Paris
volumes:
- /docker/tautulli/config:/config
ports:
- 8181:8181
restart: unless-stopped
```
@@ -107,17 +101,16 @@ services:
✨ Add the Watchtower label to each container to automate updates:
```yaml [compose.yaml]
---
services:
plex:
#...
labels:
- com.centurylinklabs.watchtower.enable=true
tautulli:
#...
labels:
- com.centurylinklabs.watchtower.enable=true
```
::
@@ -186,6 +179,7 @@ We assume you have the subdomain `tautulli.mydomain.com` with a `CNAME` pointing
Go to Dockge and edit SWAGs compose file by adding Tautullis 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 Gluetuns network:
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -73,38 +73,31 @@ services:
container_name: plex
network_mode: host
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=Europe/Paris
- VERSION=docker
- PLEX_CLAIM= #optional
volumes:
- /docker/plex/config:/config
- /docker/plex/transcode:/transcode #optional
- ${MEDIA_PATH}:/media
labels:
- com.centurylinklabs.watchtower.enable=true
restart: unless-stopped
mem_limit: 4096m
mem_reservation: 2048m
devices:
- /dev/dri:/dev/dri
tautulli:
image: lscr.io/linuxserver/tautulli:latest
container_name: tautulli
environment:
- TZ=Europe/Paris
volumes:
- /docker/tautulli/config:/config
ports:
- 8181:8181
restart: unless-stopped
@@ -112,16 +105,13 @@ services:
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
@@ -129,16 +119,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
@@ -146,15 +133,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
@@ -162,19 +146,15 @@ services:
image: lscr.io/linuxserver/overseerr:latest
container_name: overseerr
dns:
- 1.1.1.1
- 8.8.8.8
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=Europe/Paris
volumes:
- /docker/overseerr/config:/config
ports:
- 5055:5055
restart: unless-stopped
@@ -183,16 +163,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
```
@@ -200,17 +177,16 @@ services:
✨ Add the Watchtower label to each container to automate updates
```yaml [compose.yaml]
---
services:
plex:
#...
labels:
- com.centurylinklabs.watchtower.enable=true
tautulli:
#...
labels:
- com.centurylinklabs.watchtower.enable=true
```
::
@@ -422,6 +398,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 Overseerr network, which is the same as Plex (since its in the Plex stack):
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -42,19 +42,15 @@ services:
image: gitea/gitea:1.22.0
container_name: gitea
environment:
- USER_UID=${UID}
- USER_GID=${GID}
- TZ=Europe/Paris
restart: unless-stopped
networks:
- gitea
volumes:
- ./data:/data
ports:
- 3333:3000
- 222:22
```
@@ -84,6 +80,7 @@ __Prerequisite:__ We assume you have created a subdomain such as `gitea.yourdoma
In Dockge, go to the SWAG stack and edit the compose file by adding Gitea's network:
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
+1 -7
View File
@@ -92,16 +92,13 @@ services:
restart: unless-stopped
container_name: dockge
ports:
- 3555:5001 # Le port joignable depuis le LAN sera 3555
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /docker/dockge/data:/app/data
- /docker:/docker
environment:
- DOCKGE_STACKS_DIR=/docker
```
@@ -137,10 +134,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 # watchtower scan tous les conteneurs qui ont le label com.centurylinklabs.watchtower.enable=true
@@ -151,7 +146,6 @@ services:
#- WATCHTOWER_NOTIFICATION_SLACK_IDENTIFIER=Watchtower
#- WATCHTOWER_NOTIFICATION_SLACK_HOOK_URL=${WH_URL}
volumes:
- /var/run/docker.sock:/var/run/docker.sock
```
@@ -170,8 +164,8 @@ WH_URL=
Pour que Watchtower surveille vos autres conteneurs, ajoutez ceci à vos conteneurs dans leur compose.yml :
```yaml [compose.yaml]
---
labels:
- com.centurylinklabs.watchtower.enable=true
```
+1
View File
@@ -360,6 +360,7 @@ Par défaut, SWAG ne connait pas le nom "dockge". Pour qu'il puisse y accéder,
Rendez-vous sur la stack de SWAG, puis cliquez sur `éditer`, et ajouter le réseau de dockge dans le fichier de conf sur ce modele (les champs `networks`) :
```yaml [compose.yaml]
---
services:
swag:
container_name: #...
@@ -80,7 +80,6 @@ Copiez la configuration suivante :
services:
wg-easy:
environment:
- INSECURE=true
image: ghcr.io/wg-easy/wg-easy:15
container_name: wg-easy
@@ -89,20 +88,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
@@ -116,7 +111,6 @@ networks:
ipam:
driver: default
config:
- subnet: 10.42.42.0/24
- subnet: fdcc:ad94:bacf:61a3::/64
@@ -219,20 +213,18 @@ sudo nano /docker/wireguard/compose.yaml
```
Copiez la configuration ci-dessous
```yaml [compose.yaml]
---
services:
wireguard:
image: lscr.io/linuxserver/wireguard:latest
container_name: wireguard
network_mode: host
cap_add:
- NET_ADMIN
- SYS_MODULE #optional
environment:
- TZ=Europe/Paris
volumes:
- /docker/wireguard/config:/config
- /lib/modules:/lib/modules #optional
restart: unless-stopped
+3 -14
View File
@@ -83,7 +83,6 @@ services:
restart: unless-stopped
healthcheck:
test:
- CMD-SHELL
- pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}
start_period: 20s
@@ -91,14 +90,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:
@@ -108,7 +105,6 @@ services:
restart: unless-stopped
healthcheck:
test:
- CMD-SHELL
- redis-cli ping | grep PONG
start_period: 20s
@@ -116,7 +112,6 @@ services:
retries: 5
timeout: 3s
volumes:
- redis:/data
server:
@@ -131,19 +126,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
@@ -166,17 +157,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
@@ -277,6 +265,7 @@ Enregistrez avec :kbd{value="Ctrl+O"} puis :kbd{value="Entrée"}, puis quittez a
Rendez-vous dans dockge, et éditez le compose de SWAG en ajoutant le réseau d'Authentik :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -443,6 +432,7 @@ sudo nano /docker/authentik-outpost/compose.yaml
Collez la configuration suivante, en changeant les chiffres de `{AUTHENTIK_TAG:proxy:2024.2.3}`{lang=properties} par la meme version que celle de votre serveur Authentik.
```yaml [compose.yaml]
---
version: "3.5"
services:
authentik_proxy:
@@ -452,11 +442,9 @@ services:
# might be needed to reach the core authentik server
restart: unless-stopped
env_file:
- .env
# - foo
ports:
- 9000:9000
- 9443:9443
environment:
@@ -475,6 +463,7 @@ sudo nano /docker/swag/compose.yaml
```
```yaml [compose.yaml]
---
services:
swag:
container_name: #...
@@ -100,7 +100,6 @@ Collez la configuration ci-dessous
```yaml [tunnelconfig.yml]
ingress:
- hostname: mondomaine.fr
service: https://mondomaine.fr
@@ -142,13 +141,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}
@@ -165,13 +161,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
@@ -38,10 +38,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
```
@@ -144,6 +142,7 @@ Enregistrez avec :kbd{value="Ctrl+O"} puis :kbd{value="Entrée"}, puis quittez a
Rendez-vous dans dockge, et éditez le compose de SWAG en ajoutant le réseau d'Uptime-Kuma :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -36,16 +36,12 @@ services:
container_name: dozzle
image: amir20/dozzle:latest
ports:
- 9135:8080
env_file:
- .env
environment:
- DOZZLE_HOSTNAME=${DOMAIN}
volumes:
- /var/run/docker.sock:/var/run/docker.sock
```
@@ -88,6 +84,7 @@ Nous partons du principe que vous avez créé dans votre [zone DNS](/fr/general/
Rendez-vous dans dockge, et éditez le compose de SWAG en ajoutant le réseau de Dozzle :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -51,10 +51,8 @@ services:
restart: unless-stopped
container_name: speedtest-tracker
ports:
- ${PORT}:80
environment:
- PUID=${PUID}
- PGID=${GUID}
- TZ=Europe/Paris
@@ -62,7 +60,6 @@ services:
- DB_CONNECTION=sqlite
- SPEEDTEST_SCHEDULE=${SCHEDULE}
volumes:
- /docker/speedtest-tracker/data/config:/config
```
@@ -173,6 +170,7 @@ Par défaut, swag ne connait pas le nom "speedtest-tracker". Pour qu'il puisse y
Rendez-vous dans dockge, et éditez le compose de SWAG en ajoutant le réseau de Speedtest Tracker :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -44,10 +44,8 @@ services:
container_name: beszel
restart: unless-stopped
ports:
- ${PORT}:8090
volumes:
- ./data:/beszel_data
- ./socket:/beszel_socket
@@ -57,7 +55,6 @@ services:
restart: unless-stopped
network_mode: host
volumes:
- ./socket:/beszel_socket
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
@@ -123,7 +120,6 @@ services:
restart: unless-stopped
network_mode: host
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
LISTEN: ${PORT}
@@ -161,6 +157,7 @@ Nous partons du principe que vous avez créé dans votre [zone DNS](/fr/general/
Rendez-vous dans dockge, et éditez le compose de SWAG en ajoutant le réseau de Beszel :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -39,16 +39,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:
@@ -101,6 +98,7 @@ Nous partons du principe que vous avez créé dans votre [zone DNS](/fr/general/
Rendez-vous dans dockge, et éditez le compose de SWAG en ajoutant le réseau de UpSnap :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
+1 -6
View File
@@ -65,13 +65,11 @@ services:
container_name: plex
network_mode: host
environment:
- PUID=${PUID}
- PGID=${GUID}
- TZ=Europe/Paris
- VERSION=docker
volumes:
- /docker/plex/config:/config
- /docker/plex/transcode:/transcode
- /media:/media
@@ -79,22 +77,18 @@ services:
mem_limit: 4096m
mem_reservation: 2048m
devices:
- /dev/dri:/dev/dri
tautulli:
image: lscr.io/linuxserver/tautulli:latest
container_name: tautulli
environment:
- PUID=${PUID}
- PGID=${GUID}
- TZ=Europe/Paris
volumes:
- /docker/tautulli/config:/config
ports:
- 8181:8181
restart: unless-stopped
```
@@ -178,6 +172,7 @@ Nous partons du principe que vous avez le sous-domaine `tautulli.mondomaine.fr`
Rendez-vous dans dockge, et éditez le compose de SWAG en ajoutant le réseau de Tautulli :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -64,7 +64,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}
@@ -74,11 +73,9 @@ services:
- GSP_QBT_USERNAME=${ID}
- GSP_QBT_PASSWORD=${PW}
volumes:
- /docker/seedbox/qbittorrent/config:/config
- /media:/media
depends_on:
- gluetun
gluetun:
@@ -87,20 +84,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
@@ -226,6 +218,7 @@ Nous partons du principe que vous avez le sous-domaine `seedbox.mondomaine.fr` a
Rendez-vous dans dockge, et éditez le compose de SWAG en ajoutant le réseau de Gluetun :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
+1 -23
View File
@@ -70,38 +70,31 @@ services:
container_name: plex
network_mode: host
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=Europe/Paris
- VERSION=docker
- PLEX_CLAIM= #optional
volumes:
- /docker/plex/config:/config
- /docker/plex/transcode:/transcode #optional
- ${MEDIA_PATH}:/media
labels:
- com.centurylinklabs.watchtower.enable=true
restart: unless-stopped
mem_limit: 4096m
mem_reservation: 2048m
devices:
- /dev/dri:/dev/dri
tautulli:
image: lscr.io/linuxserver/tautulli:latest
container_name: tautulli
environment:
- TZ=Europe/Paris
volumes:
- /docker/tautulli/config:/config
ports:
- 8181:8181
restart: unless-stopped
@@ -109,16 +102,13 @@ services:
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
@@ -126,16 +116,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
@@ -143,15 +130,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
@@ -159,19 +143,15 @@ services:
image: lscr.io/linuxserver/overseerr:latest
container_name: overseerr
dns:
- 1.1.1.1
- 8.8.8.8
environment:
- PUID=${PUID}
- PGID=${PGID}
- TZ=Europe/Paris
volumes:
- /docker/overseerr/config:/config
ports:
- 5055:5055
restart: unless-stopped
@@ -180,16 +160,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
```
@@ -418,6 +395,7 @@ Nous partons du principe que vous avez le sous-domaine `films.mondomaine.fr` ave
Rendez-vous dans dockge, et éditez le compose de SWAG en ajoutant le réseau d'overseer, qui est celui de Plex car dans la stack Plex :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
+1
View File
@@ -60,6 +60,7 @@ Nous partons du principe que vous avez le sous-domaine `immich.mondomaine.fr` av
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau de immich :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
+1 -3
View File
@@ -41,16 +41,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
```
@@ -91,6 +88,7 @@ Nous partons du principe que vous avez le sous-domaine `nextcloud.mondomaine.fr`
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau de nextcloud :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -26,11 +26,9 @@ services:
filebrowser:
container_name: filebrowser
volumes:
- /docker/filebrowser/config:/config/
- /chemin/vers/vos/dossiers:/vosdossiers #ajoutez ici les dossiers que vous voulez voir apparaitre dans filebrowser
ports:
- 8010:80
image: filebrowser/filebrowser:s6
```
@@ -72,6 +70,7 @@ __Au préalable :__ nous partons du principe que vous avez créé dans votre [zo
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau de filebrowser :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
+1 -3
View File
@@ -28,10 +28,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 # chemin du dossier dans lequel vous souhaitez stocker les fichiers uploadés dans pingvin. A changer selon vos préférences.
@@ -39,7 +37,6 @@ services:
clamav:
condition: service_healthy
networks:
- swag
clamav: #antivirus pour les fichiers
@@ -89,6 +86,7 @@ Nous partons du principe que vous avez le sous-domaine `pingvin.mondomaine.fr` a
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau de pingvin :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -43,18 +43,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
# ajoutez vos dossier à monter dans vscode
# - /chemin/vers/dossier:/dossier
ports:
- 8443:8443
restart: unless-stopped
```
@@ -108,11 +105,11 @@ __En cas d'échec :__ vérifiez les règles de votre pare-feu.
Vous pouvez monter les dossiers à partager dans vscode en ajoutant les volumes concernés dans le compose.yaml (ou via dockge), et en redéployant le conteneur.
```yaml [compose.yaml]
---
services:
code-server:
#...
volumes:
- /chemin/vers/dossier:/dossier
```
Une fois dans vscode, vous pourrez accéder au dossier.
@@ -128,6 +125,7 @@ __Au préalable :__ Nous partons du principe que vous avez créé dans votre [zo
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau de code-server :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -39,19 +39,15 @@ services:
image: gitea/gitea:1.22.0
container_name: gitea
environment:
- USER_UID=${UID}
- USER_GID=${GID}
- TZ=Europe/Paris
restart: unless-stopped
networks:
- gitea
volumes:
- ./data:/data
ports:
- 3333:3000
- 222:22
```
@@ -80,6 +76,7 @@ __Au préalable :__ nous partons du principe que vous avez créé dans votre [zo
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau de gitea :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
@@ -29,7 +29,6 @@ services:
restart: unless-stopped
image: corentinth/it-tools:latest
ports:
- 3222:80
```
@@ -64,6 +63,7 @@ __Au préalable :__ nous partons du principe que vous avez créé dans votre [zo
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau de it-tools :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
+1 -2
View File
@@ -66,14 +66,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
@@ -115,6 +113,7 @@ N'utilisez pas les tunnels cloudflare pour exposer Adguard, et désactivez tout
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau d'adguard :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
+1 -4
View File
@@ -38,16 +38,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
@@ -116,6 +112,7 @@ Tout l'intérêt d'une telle solution, c'est de pouvoir y accéder à distance e
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau de vaultwarden :
```yaml [compose.yaml]
---
services:
swag:
container_name: # ...
+1 -11
View File
@@ -29,42 +29,36 @@ En gros :
Par exemple, pour Beszel cela rendrait comme ceci :
```yaml [compose.yaml]
---
services:
socat-proxy:
image: git.djeex.fr/djeex/socat-proxy:latest
container_name: socat-proxy-beszel
environment:
- TARGET_HOST=${TARGET_HOST}
- TARGET_PORT=${TARGET_PORT}
- UNIX_SOCKET_PATH=${UNIX_SOCKET_PATH}
- HOST_SOCKET_PATH=${HOST_SOCKET_PATH}
- UNIX_SOCKET_NAME=${UNIX_SOCKET_NAME}
volumes:
- ${HOST_SOCKET_PATH}:${UNIX_SOCKET_PATH}
restart: unless-stopped
depends_on:
- ${TARGET_HOST}
socket-proxy:
image: lscr.io/linuxserver/socket-proxy:latest
container_name: ${TARGET_HOST}
security_opt:
- no-new-privileges:true
environment:
- CONTAINERS=1
- INFO=1
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
restart: unless-stopped
read_only: true
tmpfs:
- /run
beszel-agent:
@@ -73,16 +67,12 @@ services:
restart: unless-stopped
network_mode: host
security_opt:
- no-new-privileges:true
volumes:
- ${HOST_SOCKET_PATH}/${UNIX_SOCKET_NAME}:/var/run/docker.sock:ro
environment:
- #... your Beszel environment var
depends_on:
- socat-proxy
```
@@ -33,41 +33,32 @@ services:
container_name: backrest
hostname: backrest
security_opt:
- no-new-privileges:true
volumes:
- ... # vos volumes
environment:
- ... # vos variables
- DOCKER_HOST=tcp://socket-proxy-backrest:2375
restart: unless-stopped
ports:
- ... # vos ports
depends_on:
- socket-proxy
socket-proxy:
image: lscr.io/linuxserver/socket-proxy:latest
container_name: socket-proxy-backrest
security_opt:
- no-new-privileges:true
environment:
- CONTAINERS=1
- ALLOW_START=1
- ALLOW_STOP=1
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
restart: unless-stopped
read_only: true
tmpfs:
- /run
```
@@ -106,11 +97,11 @@ sleep 10
Une fois les scripts renseignés et paramétrés pour les bons hooks dans **Backrest**, vous n'avez plus qu'à ajouter le libellé `backrest.backup.stop=true` dans les fichiers `compose.yaml` des conteneurs à éteindre et rallumer durant les sauvegardes :
```yaml [compose.yaml]
---
services:
votre_service:
...
labels:
- com.centurylinklabs.watchtower.enable=true
```
@@ -83,10 +83,8 @@ services:
wg-easy:
network_mode: host
env_file:
- .env
environment:
- LANG=en
- WG_HOST=${HOST}
- PASSWORD_HASH=${PW}
@@ -99,11 +97,9 @@ services:
image: ghcr.io/wg-easy/wg-easy:14
container_name: wg-easy
volumes:
- /docker/wg_easy/config/etc_wireguard:/etc/wireguard
restart: unless-stopped
cap_add:
- NET_ADMIN
- SYS_MODULE
```
@@ -207,20 +203,18 @@ sudo nano /docker/wireguard/compose.yaml
```
Appuyez sur `i` pour rentrer en modification et copiez la configuration ci-dessous
```yaml [compose.yaml]
---
services:
wireguard:
image: lscr.io/linuxserver/wireguard:latest
container_name: wireguard
network_mode: host
cap_add:
- NET_ADMIN
- SYS_MODULE #optional
environment:
- TZ=Europe/Paris
volumes:
- /docker/wireguard/config:/config
- /lib/modules:/lib/modules #optional
restart: unless-stopped