66 lines
1.9 KiB
YAML
66 lines
1.9 KiB
YAML
services:
|
|
mkdocs:
|
|
image: squidfunk/mkdocs-material
|
|
command:
|
|
- build
|
|
volumes:
|
|
- ./mkdocs:/docs
|
|
|
|
traefik:
|
|
image: traefik:latest
|
|
command:
|
|
- --configFile=/etc/traefik/traefik.yml
|
|
ports:
|
|
- 80:80/tcp
|
|
- 443:443/tcp
|
|
- 443:443/udp
|
|
- 8080:8080/tcp
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
- /var/log/traefik:/var/log/traefik
|
|
- ./traefik/etc:/etc/traefik:ro
|
|
- ./traefik/tls:/letsencrypt
|
|
|
|
nginx:
|
|
image: nginx:latest
|
|
restart: unless-stopped
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.rskio.entrypoints=websecure
|
|
- traefik.http.routers.rskio.rule=Host(`docs.rskio.com`)
|
|
- traefik.http.routers.rskio.tls=true
|
|
- traefik.http.routers.rskio.tls.options=docs@file
|
|
- traefik.http.routers.rskio.tls.certresolver=rskio_certresolver
|
|
- traefik.http.routers.rskio.service=rskio@docker
|
|
- traefik.http.services.rskio.loadbalancer.server.port=80
|
|
- traefik.http.routers.rskio.middlewares=secureHeaders@file
|
|
volumes:
|
|
- ./mkdocs/site:/opt/share/mkdocs/html:ro
|
|
- ./nginx/etc/conf.d:/etc/nginx/conf.d:ro
|
|
depends_on:
|
|
mkdocs:
|
|
condition: service_completed_successfully
|
|
|
|
stream:
|
|
image: jellyfin/jellyfin
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.stream.entrypoints=websecure
|
|
- traefik.http.routers.stream.rule=Host(`stream.rskio.com`)
|
|
- traefik.http.routers.stream.tls=true
|
|
- traefik.http.routers.stream.tls.certresolver=rskio_certresolver
|
|
- traefik.http.routers.stream.service=stream@docker
|
|
- traefik.http.services.stream.loadbalancer.server.port=8096
|
|
tty: true
|
|
restart: unless-stopped
|
|
devices:
|
|
- /dev/dri:/dev/dri
|
|
volumes:
|
|
- ./jellyfin/config:/config
|
|
- ./jellyfin/cache:/cache
|
|
- /mnt/media:/data
|
|
ports:
|
|
- 8096:8096
|
|
environment:
|
|
- TZ=US/Mountain
|