diff --git a/birdnet-pipy/config.yaml b/birdnet-pipy/config.yaml index 2460f4a97..c02097e9f 100644 --- a/birdnet-pipy/config.yaml +++ b/birdnet-pipy/config.yaml @@ -60,6 +60,9 @@ environment: PGID: "0" PUID: "0" image: ghcr.io/alexbelgium/birdnet-pipy-{arch} +ingress: true +ingress_port: 0 +ingress_stream: true init: false map: - addon_config:rw diff --git a/birdnet-pipy/rootfs/etc/nginx/includes/ingress_params.conf b/birdnet-pipy/rootfs/etc/nginx/includes/ingress_params.conf index 9338d5e3f..89e051c3f 100644 --- a/birdnet-pipy/rootfs/etc/nginx/includes/ingress_params.conf +++ b/birdnet-pipy/rootfs/etc/nginx/includes/ingress_params.conf @@ -2,8 +2,22 @@ absolute_redirect off; rewrite ^%%ingress_entry%%/(.*)$ /$1 break; sub_filter_once off; sub_filter_types *; + +# Inject for Vue Router history mode and static asset loading sub_filter '' ''; + +# Rewrite absolute href/src attributes in HTML sub_filter 'href="/' 'href="%%ingress_entry%%/'; sub_filter 'src="/' 'src="%%ingress_entry%%/'; -sub_filter '"/birdnet/' '"%%ingress_entry%%/birdnet/'; -sub_filter 'url(/birdnet/' 'url(%%ingress_entry%%/birdnet/'; + +# Rewrite API paths in JS bundles (axios baseURL and fetch calls) +sub_filter '"/api' '"%%ingress_entry%%/api'; +sub_filter "'/api" "'%%ingress_entry%%/api"; + +# Rewrite stream paths +sub_filter '"/stream/' '"%%ingress_entry%%/stream/'; +sub_filter "'/stream/" "'%%ingress_entry%%/stream/"; + +# Rewrite Socket.IO default path in the client library +sub_filter '"/socket.io"' '"%%ingress_entry%%/socket.io"'; +sub_filter "'/socket.io'" "'%%ingress_entry%%/socket.io'";