34 lines
1.3 KiB
YAML
34 lines
1.3 KiB
YAML
services:
|
|
|
|
app:
|
|
image: nginx:stable
|
|
volumes:
|
|
- ${HTML}:/usr/share/nginx/html:ro
|
|
- $PWD/nginx.conf:/etc/nginx/nginx.conf:ro
|
|
networks:
|
|
- web
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD", "curl" ,"--fail", "localhost"]
|
|
interval: 5s
|
|
timeout: 3s
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.webroot.entrypoints=websecure" # All HTTP requests are globally redirected to HTTPS
|
|
- "traefik.http.routers.webroot.rule=Host(`${DOMAIN}`)"
|
|
- "traefik.http.routers.webroot.tls.certresolver=netcup"
|
|
- "traefik.http.routers.webroot.tls.options=intermediate@file"
|
|
- "traefik.http.routers.webroot.middlewares=redirect-to-www"
|
|
- "traefik.http.middlewares.redirect-to-www.redirectregex.regex=^https?://florianzirker.de/(.*)"
|
|
- "traefik.http.middlewares.redirect-to-www.redirectregex.replacement=https://www.florianzirker.de/$${1}"
|
|
- "traefik.http.middlewares.redirect-to-www.redirectregex.permanent=true"
|
|
- "traefik.http.routers.www-secure.entrypoints=websecure"
|
|
- "traefik.http.routers.www-secure.rule=Host(`www.${DOMAIN}`)"
|
|
- "traefik.http.routers.www-secure.tls.certresolver=netcup"
|
|
- "traefik.http.routers.www-secure.tls.options=intermediate@file"
|
|
- "docker.group=www"
|
|
|
|
networks:
|
|
web:
|
|
external: true
|
|
|