30 lines
886 B
YAML
30 lines
886 B
YAML
version: "3.9"
|
|
services:
|
|
media:
|
|
image: nginx:1.27-alpine
|
|
restart: unless-stopped
|
|
container_name: mindboost-media-server
|
|
volumes:
|
|
- ./nginx/html:/usr/share/nginx/html:ro
|
|
- ./nginx/conf.d:/etc/nginx/conf.d:ro
|
|
|
|
labels:
|
|
# ——— Traefik v2 path-based routing ———
|
|
- traefik.enable=true
|
|
|
|
# Route: https://b.mindboost.team/media (optionally with /anything/after/that)
|
|
- traefik.http.routers.media.rule=Host(`b.mindboost.team`) && Path(`/{file:.*\\.(mp3|aac|m4a|ogg|opus|flac|wav)}`)
|
|
|
|
# TLS via the proxys “websecure” entrypoint
|
|
- traefik.http.routers.media.entrypoints=websecure
|
|
- traefik.http.routers.media.tls.certresolver=http_resolver
|
|
|
|
# Upstream container port
|
|
- traefik.http.services.media.loadbalancer.server.port=80
|
|
|
|
networks:
|
|
- proxy
|
|
networks:
|
|
proxy:
|
|
external: true
|