Update docker-compose example configuration

This commit is contained in:
Yohann D'ANELLO 2020-09-27 22:06:57 +02:00
parent b4ce28634d
commit e64f5105c9
2 changed files with 27 additions and 5 deletions

View File

@ -17,5 +17,6 @@ COPY --from=build_base /code/web/static /app/web/static
COPY --from=build_base /code/web/template /app/web/template
COPY --from=build_base /usr/local/lib64/libsrt.so.1 /lib/libsrt.so.1
WORKDIR /app
EXPOSE 8080
# 8080 for Web and Websocket, 2112 for prometheus monitoring and 9710 for SRT
EXPOSE 8080 2112 9710
CMD ["/app/ghostream"]

View File

@ -7,8 +7,9 @@ services:
image: traefik:v2.2.11
restart: always
ports:
- 443:443
- 80:80
- 443:443
- 9710:9710
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./traefik_data:/data
@ -20,6 +21,7 @@ services:
- "--entrypoints.web.address=:80"
- "--entrypoints.web.http.redirections.entryPoint.to=websecure"
- "--entrypoints.websecure.address=:443"
- "--entrypoints.srtsecure.address=:9710"
# Define certificates
- "--certificatesResolvers.mytlschallenge.acme.email=root@example.com"
- "--certificatesResolvers.mytlschallenge.acme.storage=/data/acme.json"
@ -28,6 +30,25 @@ services:
ghostream:
build: ..
restart: always
ports:
- 2112:2112
- 9710:9710
volumes:
- ./ghostream_data/ghostream.yml:/code/ghostream.yml:ro
labels:
- "traefik.enable=true"
- "traefik.http.routers.ghostream.rule=Host(`stream.example.com`)"
- "traefik.http.routers.ghostream.entrypoints=websecure"
- "traefik.http.routers.ghostream.tls.certresolver=mytlschallenge"
- "traefik.http.routers.ghostream.service=ghostream"
- "traefik.http.services.ghostream.loadbalancer.server.port=8080"
- "traefik.http.routers.ghostream-metrics.rule=Host(`stream.example.com`) && PathPrefix(`/metrics`)"
- "traefik.http.routers.ghostream-metrics.priority=100"
- "traefik.http.routers.ghostream-metrics.entrypoints=websecure"
- "traefik.http.routers.ghostream-metrics.tls.certresolver=mytlschallenge"
- "traefik.http.routers.ghostream-metrics.service=ghostream-metrics"
- "traefik.http.services.ghostream-metrics.loadbalancer.server.port=2112"
- "traefik.tcp.routers.ghostream-srt.rule=HostSNI(`stream.example.com`)"
- "traefik.tcp.routers.ghostream-srt.entrypoints=srtsecure"
- "traefik.tcp.routers.ghostream-srt.tls.certresolver=mytlschallenge"
- "traefik.tcp.routers.ghostream-srt.service=ghostream-srt"
- "traefik.tcp.services.ghostream-srt.loadbalancer.server.port=9710"