1
0
mirror of https://gitlab.crans.org/nounous/ghostream.git synced 2024-12-22 19:42:20 +00:00

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 /code/web/template /app/web/template
COPY --from=build_base /usr/local/lib64/libsrt.so.1 /lib/libsrt.so.1 COPY --from=build_base /usr/local/lib64/libsrt.so.1 /lib/libsrt.so.1
WORKDIR /app WORKDIR /app
EXPOSE 8080 # 8080 for Web and Websocket, 2112 for prometheus monitoring and 9710 for SRT
EXPOSE 8080 2112 9710
CMD ["/app/ghostream"] CMD ["/app/ghostream"]

View File

@ -7,8 +7,9 @@ services:
image: traefik:v2.2.11 image: traefik:v2.2.11
restart: always restart: always
ports: ports:
- 443:443
- 80:80 - 80:80
- 443:443
- 9710:9710
volumes: volumes:
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
- ./traefik_data:/data - ./traefik_data:/data
@ -20,6 +21,7 @@ services:
- "--entrypoints.web.address=:80" - "--entrypoints.web.address=:80"
- "--entrypoints.web.http.redirections.entryPoint.to=websecure" - "--entrypoints.web.http.redirections.entryPoint.to=websecure"
- "--entrypoints.websecure.address=:443" - "--entrypoints.websecure.address=:443"
- "--entrypoints.srtsecure.address=:9710"
# Define certificates # Define certificates
- "--certificatesResolvers.mytlschallenge.acme.email=root@example.com" - "--certificatesResolvers.mytlschallenge.acme.email=root@example.com"
- "--certificatesResolvers.mytlschallenge.acme.storage=/data/acme.json" - "--certificatesResolvers.mytlschallenge.acme.storage=/data/acme.json"
@ -28,6 +30,25 @@ services:
ghostream: ghostream:
build: .. build: ..
restart: always restart: always
ports: volumes:
- 2112:2112 - ./ghostream_data/ghostream.yml:/code/ghostream.yml:ro
- 9710:9710 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"