diff --git a/3dprinter-octoprint/config.yaml b/3dprinter-octoprint/config.yaml index 42f2b5f..c968aff 100644 --- a/3dprinter-octoprint/config.yaml +++ b/3dprinter-octoprint/config.yaml @@ -26,11 +26,11 @@ usb: true uart: true options: trusted_proxies: "" - # camera_url: "http://b7aa59c4-camera-mjpg-streamer" + camera_url: "" # mode: normal schema: trusted_proxies: "str?" - # camera_url: "url?" + camera_url: "url?" # mode: "list(normal|recovery|reverse_proxy_test|camera)?" image: ghcr.io/fredrikbaberg/ha-addon-3dprinter-octoprint-{arch} # codenotary: diff --git a/3dprinter-octoprint/rootfs/etc/cont-init.d/proxy.sh b/3dprinter-octoprint/rootfs/etc/cont-init.d/proxy.sh index 37d9cfe..b01dff7 100755 --- a/3dprinter-octoprint/rootfs/etc/cont-init.d/proxy.sh +++ b/3dprinter-octoprint/rootfs/etc/cont-init.d/proxy.sh @@ -9,6 +9,7 @@ bashio::var.json \ addon_hostname "$(bashio::addon.hostname)" \ addon_ip "$(bashio::addon.ip_address)" \ trusted_proxies "$(bashio::config 'trusted_proxies')" \ + camera_url "$(bashio::config 'camera_url')" \ | tempio \ -template /usr/share/tempio/caddy/Caddyfile.internal_external.gtpl \ -out /etc/caddy/sites-enabled/internal_external.caddy diff --git a/3dprinter-octoprint/rootfs/usr/share/tempio/caddy/Caddyfile.internal_external.gtpl b/3dprinter-octoprint/rootfs/usr/share/tempio/caddy/Caddyfile.internal_external.gtpl index 56f2ec8..3dc4045 100644 --- a/3dprinter-octoprint/rootfs/usr/share/tempio/caddy/Caddyfile.internal_external.gtpl +++ b/3dprinter-octoprint/rootfs/usr/share/tempio/caddy/Caddyfile.internal_external.gtpl @@ -2,6 +2,12 @@ # * Home-Assistant OctoPrint integration. # * Accessing OctoPrint WebUI through external port. :5000 { + {{ if .camera_url }} + handle_path /camera/* { + rewrite * /{path} + reverse_proxy {{ .camera_url }} + } + {{ end }} reverse_proxy http://127.0.0.1:80 { trusted_proxies {{ .trusted_proxies }} }