Files
mediastack/docker/docker-compose-swag.yaml
2025-02-25 20:00:50 +01:00

47 lines
1.5 KiB
YAML

###########################################################################
###########################################################################
##
## Docker Compose File: SWAG (LinuxServer.io)
## Function: Reverse proxy with Certbot, for Let's Encrypt / ZeroSSL
##
## Documentation: https://docs.linuxserver.io/general/swag
## https://www.linuxserver.io/blog/zero-trust-hosting-and-reverse-proxy-via-cloudflare-swag-and-authelia
##
###########################################################################
###########################################################################
services:
swag:
image: lscr.io/linuxserver/swag:latest
container_name: swag
cap_add:
- NET_ADMIN
restart: unless-stopped
volumes:
- ${FOLDER_FOR_DATA:?err}/swag:/config
ports:
- ${REVERSE_PROXY_PORT_HTTP:?err}:80
- ${REVERSE_PROXY_PORT_HTTPS:?err}:443
environment:
- PUID=${PUID:?err}
- PGID=${PGID:?err}
- UMASK=${UMASK:?err}
- TZ=${TIMEZONE:?err}
- URL=${DOMAINNAME:?err}
- SUBDOMAINS=${SUBDOMAINS}
- VALIDATION=${VALIDATION:?err}
- CERTPROVIDER=${CERTPROVIDER}
- DNSPLUGIN=${DNSPLUGIN}
- PROPAGATION=${PROPAGATION}
- DUCKDNSTOKEN=${DUCKDNSTOKEN}
- EMAIL=${EMAIL}
- ONLY_SUBDOMAINS=${ONLY_SUBDOMAINS}
- EXTRA_DOMAINS=${EXTRA_DOMAINS}
- STAGING=${STAGING}
# NOTE: SWAG MUST NOT connect to the Gluetun VPN container
networks:
default:
name: mediastack
external: true