From 27e33d5d7e7877e31a19f6360c75e524a5becc47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20K=C3=BCffner?= Date: Mon, 18 Apr 2022 21:05:09 +0200 Subject: [PATCH] Serve ustreamer via subpath Resolves #17 --- README.md | 4 +++- docker-compose.override.yaml | 12 +++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 4cd50e4..76255e8 100644 --- a/README.md +++ b/README.md @@ -133,7 +133,7 @@ Example from service Klipper: ### Multiple Webcams The Ustreamer Service is already templated to be easily reused for multi-webcam Setups. To add a new Ustreamer Service, simply add the following snippet to ``docker-compose.override.yaml``. -Notice, that all service names, container names and traefik labels need to be unique. +Notice, that all service names, container names and traefik labels need to be unique while the right side of the passed Device (`:/dev/webcam`) always stays the same. Hence replace webcam2 with webcam3 and so on for every webcam you add and update the physical device that gets passed to the container. ```yaml webcam2: @@ -146,6 +146,8 @@ Hence replace webcam2 with webcam3 and so on for every webcam you add and update - "traefik.http.services.webcam2.loadbalancer.server.port=8080" - "traefik.http.routers.webcam2.rule=PathPrefix(`/webcam2`)" - "traefik.http.routers.webcam2.entrypoints=web" + - "traefik.http.middlewares.webcam2.stripprefix.prefixes=/webcam2" + - "traefik.http.routers.webcam2.middlewares=webcam2" ``` ### Building Docker images locally diff --git a/docker-compose.override.yaml b/docker-compose.override.yaml index 8acb286..5195b57 100644 --- a/docker-compose.override.yaml +++ b/docker-compose.override.yaml @@ -17,13 +17,15 @@ services: devices: - /dev/ttymxc3:/dev/ttymxc3 - ustreamer: + webcam: <<: *ustreamer-svc - container_name: ustreamer + container_name: webcam devices: - /dev/video0:/dev/webcam labels: - "traefik.enable=true" - - "traefik.http.services.ustreamer.loadbalancer.server.port=8080" - - "traefik.http.routers.ustreamer.rule=PathPrefix(`/stream`)" - - "traefik.http.routers.ustreamer.entrypoints=web" \ No newline at end of file + - "traefik.http.services.webcam.loadbalancer.server.port=8080" + - "traefik.http.routers.webcam.rule=PathPrefix(`/webcam`)" + - "traefik.http.routers.webcam.entrypoints=web" + - "traefik.http.middlewares.webcam.stripprefix.prefixes=/webcam" + - "traefik.http.routers.webcam.middlewares=webcam" \ No newline at end of file