diff --git a/mealplanner-ingress/Dockerfile b/mealplanner-ingress/Dockerfile new file mode 100644 index 0000000..b852e70 --- /dev/null +++ b/mealplanner-ingress/Dockerfile @@ -0,0 +1,9 @@ +FROM nginx:1.27-alpine + +RUN apk add --no-cache jq + +COPY run.sh /run.sh +RUN chmod a+x /run.sh + +EXPOSE 8099 +CMD ["/run.sh"] diff --git a/mealplanner-ingress/config.yaml b/mealplanner-ingress/config.yaml new file mode 100644 index 0000000..15eadc6 --- /dev/null +++ b/mealplanner-ingress/config.yaml @@ -0,0 +1,19 @@ +name: MealPlanner Ingress +version: "0.1.0" +slug: mealplanner_ingress +description: Home Assistant Ingress proxy for an existing MealPlanner deployment. +arch: + - amd64 + - aarch64 + - armv7 +startup: application +boot: auto +init: false +ingress: true +ingress_port: 8099 +panel_icon: mdi:food-fork-drink +panel_title: MealPlanner +options: + upstream_url: "http://192.168.1.54:8082" +schema: + upstream_url: str diff --git a/mealplanner-ingress/run.sh b/mealplanner-ingress/run.sh new file mode 100755 index 0000000..a3b4832 --- /dev/null +++ b/mealplanner-ingress/run.sh @@ -0,0 +1,38 @@ +#!/usr/bin/env sh +set -eu + +OPTIONS_FILE=/data/options.json +UPSTREAM_URL=$(jq -r '.upstream_url // empty' "$OPTIONS_FILE") + +case "$UPSTREAM_URL" in + http://*|https://*) ;; + *) + echo "upstream_url must start with http:// or https://" >&2 + exit 1 + ;; +esac + +UPSTREAM_URL=${UPSTREAM_URL%/} + +cat > /etc/nginx/conf.d/default.conf <