From e36abaa72a892930f55a5325b44cb20c3b382874 Mon Sep 17 00:00:00 2001 From: Worph Date: Tue, 27 Oct 2026 16:37:43 +0000 Subject: [PATCH] route on the ip zone (APP_IP_ZONE) instead of nip.io --- Apps/MetaCore/docker-compose.yml | 6 +++--- Apps/MetaCore/pre-install/configuration.yml | 8 ++++---- Apps/MetaFuse/docker-compose.yml | 6 +++--- Apps/MetaGateway/docker-compose.yml | 14 +++++++------- Apps/MetaGatewayShared/docker-compose.yml | 6 +++--- Apps/MetaRead/docker-compose.yml | 12 ++++++------ Apps/MetaReadShared/docker-compose.yml | 6 +++--- Apps/MetaShare/docker-compose.yml | 6 +++--- Apps/MetaSort/docker-compose.yml | 6 +++--- Apps/MetaStremio/docker-compose.yml | 2 +- Apps/MetaWatch/docker-compose.yml | 14 +++++++------- Apps/MetaWatchShared/docker-compose.yml | 8 ++++---- CLAUDE.md | 2 +- 13 files changed, 48 insertions(+), 48 deletions(-) diff --git a/Apps/MetaCore/docker-compose.yml b/Apps/MetaCore/docker-compose.yml index 979203f..803d4d1 100644 --- a/Apps/MetaCore/docker-compose.yml +++ b/Apps/MetaCore/docker-compose.yml @@ -99,7 +99,7 @@ services: BACKEND_HOST: "metacore-app" BACKEND_PORT: "80" LISTEN_PORT: "80" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" depends_on: - metacore-app @@ -118,8 +118,8 @@ services: caddy_0.1_handle: "" caddy_0.1_handle.reverse_proxy: "{{upstreams 80}}" - # ---- metacore-IP.nip.io (gateway TLS) ---- - caddy_1: metacore-${APP_PUBLIC_IP_DASH}.nip.io + # ---- metacore-IP. (gateway TLS) ---- + caddy_1: metacore-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.0_handle: "/health" caddy_1.0_handle.reverse_proxy: "metacore-app:80" diff --git a/Apps/MetaCore/pre-install/configuration.yml b/Apps/MetaCore/pre-install/configuration.yml index d384123..70c5eb3 100644 --- a/Apps/MetaCore/pre-install/configuration.yml +++ b/Apps/MetaCore/pre-install/configuration.yml @@ -2,7 +2,7 @@ # Authelia Configuration for MetaMesh (OIDC provider mode) # # Template — MetaCore/pre-install-cmd substitutes the placeholders below at -# install time: APP_DOMAIN, APP_PUBLIC_IP_DASH, HMAC secret, RSA JWKS private +# install time: APP_DOMAIN, APP_PUBLIC_IP_DASH, APP_IP_ZONE, HMAC secret, RSA JWKS private # key, and one argon2id hash per OIDC client. # # Protected apps reach Authelia via OIDC (not forward_auth) so each app's @@ -81,7 +81,7 @@ __OIDC_JWKS_KEY__ require_pkce: false redirect_uris: - 'https://metacore-__AUTH_DOMAIN__/oauth2/callback' - - 'https://metacore-__APP_PUBLIC_IP_DASH__.nip.io/oauth2/callback' + - 'https://metacore-__APP_PUBLIC_IP_DASH__.__APP_IP_ZONE__/oauth2/callback' - 'https://metacore-__APP_PUBLIC_IP_DASH__.sslip.io/oauth2/callback' scopes: - 'openid' @@ -104,7 +104,7 @@ __OIDC_JWKS_KEY__ require_pkce: false redirect_uris: - 'https://metasort-__AUTH_DOMAIN__/oauth2/callback' - - 'https://metasort-__APP_PUBLIC_IP_DASH__.nip.io/oauth2/callback' + - 'https://metasort-__APP_PUBLIC_IP_DASH__.__APP_IP_ZONE__/oauth2/callback' - 'https://metasort-__APP_PUBLIC_IP_DASH__.sslip.io/oauth2/callback' scopes: - 'openid' @@ -127,7 +127,7 @@ __OIDC_JWKS_KEY__ require_pkce: false redirect_uris: - 'https://metafuse-__AUTH_DOMAIN__/oauth2/callback' - - 'https://metafuse-__APP_PUBLIC_IP_DASH__.nip.io/oauth2/callback' + - 'https://metafuse-__APP_PUBLIC_IP_DASH__.__APP_IP_ZONE__/oauth2/callback' - 'https://metafuse-__APP_PUBLIC_IP_DASH__.sslip.io/oauth2/callback' scopes: - 'openid' diff --git a/Apps/MetaFuse/docker-compose.yml b/Apps/MetaFuse/docker-compose.yml index fb8d3a9..e0ef8e4 100644 --- a/Apps/MetaFuse/docker-compose.yml +++ b/Apps/MetaFuse/docker-compose.yml @@ -77,7 +77,7 @@ services: BACKEND_HOST: "metafuse-app" BACKEND_PORT: "80" LISTEN_PORT: "80" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" depends_on: - metafuse-app @@ -94,8 +94,8 @@ services: caddy_0.2_handle: "" caddy_0.2_handle.reverse_proxy: "{{upstreams 80}}" - # ---- metafuse-IP.nip.io (gateway TLS) ---- - caddy_1: metafuse-${APP_PUBLIC_IP_DASH}.nip.io + # ---- metafuse-IP. (gateway TLS) ---- + caddy_1: metafuse-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.0_handle: "/health" caddy_1.0_handle.reverse_proxy: "metafuse-app:80" diff --git a/Apps/MetaGateway/docker-compose.yml b/Apps/MetaGateway/docker-compose.yml index e693587..fec96cb 100644 --- a/Apps/MetaGateway/docker-compose.yml +++ b/Apps/MetaGateway/docker-compose.yml @@ -306,7 +306,7 @@ services: BACKEND_HOST: "metagateway-app" BACKEND_PORT: "3000" LISTEN_PORT: "80" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" depends_on: - metagateway-app labels: @@ -331,8 +331,8 @@ services: caddy_0.3_handle: "" caddy_0.3_handle.reverse_proxy: "{{upstreams 80}}" - # ---- metagateway-IP.nip.io (gateway TLS) ---- - caddy_1: metagateway-${APP_PUBLIC_IP_DASH}.nip.io + # ---- metagateway-IP. (gateway TLS) ---- + caddy_1: metagateway-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.0_handle: "/health" caddy_1.0_handle.reverse_proxy: "metagateway-app:3000" @@ -385,7 +385,7 @@ services: expose: ["80"] environment: OIDC_REGISTRAR_URL: "http://auth-registrar:9092" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" BACKEND_HOST: "metagateway-core" BACKEND_PORT: "80" LISTEN_PORT: "80" @@ -393,7 +393,7 @@ services: caddy_0: metagatewaycore-${APP_DOMAIN} caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 80}}" - caddy_1: metagatewaycore-${APP_PUBLIC_IP_DASH}.nip.io + caddy_1: metagatewaycore-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 80}}" caddy_2: metagatewaycore-${APP_PUBLIC_IP_DASH}.sslip.io @@ -414,7 +414,7 @@ services: expose: ["80"] environment: OIDC_REGISTRAR_URL: "http://auth-registrar:9092" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" BACKEND_HOST: "metagateway-share" BACKEND_PORT: "3000" LISTEN_PORT: "80" @@ -422,7 +422,7 @@ services: caddy_0: metagatewayshare-${APP_DOMAIN} caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 80}}" - caddy_1: metagatewayshare-${APP_PUBLIC_IP_DASH}.nip.io + caddy_1: metagatewayshare-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 80}}" caddy_2: metagatewayshare-${APP_PUBLIC_IP_DASH}.sslip.io diff --git a/Apps/MetaGatewayShared/docker-compose.yml b/Apps/MetaGatewayShared/docker-compose.yml index 108cdeb..8b702b4 100644 --- a/Apps/MetaGatewayShared/docker-compose.yml +++ b/Apps/MetaGatewayShared/docker-compose.yml @@ -193,7 +193,7 @@ services: BACKEND_HOST: "metagateway-app" BACKEND_PORT: "3000" LISTEN_PORT: "80" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" depends_on: - metagateway-app labels: @@ -221,8 +221,8 @@ services: caddy_0.3_handle: "" caddy_0.3_handle.reverse_proxy: "{{upstreams 80}}" - # ---- metagateway-IP.nip.io (gateway TLS) ---- - caddy_1: metagateway-${APP_PUBLIC_IP_DASH}.nip.io + # ---- metagateway-IP. (gateway TLS) ---- + caddy_1: metagateway-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.0_handle: "/health" caddy_1.0_handle.reverse_proxy: "metagateway-app:3000" diff --git a/Apps/MetaRead/docker-compose.yml b/Apps/MetaRead/docker-compose.yml index 9ed105c..6e01b33 100644 --- a/Apps/MetaRead/docker-compose.yml +++ b/Apps/MetaRead/docker-compose.yml @@ -303,7 +303,7 @@ services: - 80 environment: OIDC_REGISTRAR_URL: "http://auth-registrar:9092" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" BACKEND_HOST: "metaread-app" BACKEND_PORT: "3000" LISTEN_PORT: "80" @@ -311,7 +311,7 @@ services: caddy_0: metaread-${APP_DOMAIN} caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 80}}" - caddy_1: metaread-${APP_PUBLIC_IP_DASH}.nip.io + caddy_1: metaread-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 80}}" caddy_2: metaread-${APP_PUBLIC_IP_DASH}.sslip.io @@ -337,7 +337,7 @@ services: - 80 environment: OIDC_REGISTRAR_URL: "http://auth-registrar:9092" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" BACKEND_HOST: "metaread-share" BACKEND_PORT: "3000" LISTEN_PORT: "80" @@ -345,7 +345,7 @@ services: caddy_0: metareadshare-${APP_DOMAIN} caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 80}}" - caddy_1: metareadshare-${APP_PUBLIC_IP_DASH}.nip.io + caddy_1: metareadshare-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 80}}" caddy_2: metareadshare-${APP_PUBLIC_IP_DASH}.sslip.io @@ -367,7 +367,7 @@ services: - 80 environment: OIDC_REGISTRAR_URL: "http://auth-registrar:9092" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" BACKEND_HOST: "metaread-search" BACKEND_PORT: "3000" LISTEN_PORT: "80" @@ -375,7 +375,7 @@ services: caddy_0: metareadsearch-${APP_DOMAIN} caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 80}}" - caddy_1: metareadsearch-${APP_PUBLIC_IP_DASH}.nip.io + caddy_1: metareadsearch-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 80}}" caddy_2: metareadsearch-${APP_PUBLIC_IP_DASH}.sslip.io diff --git a/Apps/MetaReadShared/docker-compose.yml b/Apps/MetaReadShared/docker-compose.yml index fae38ab..a5ac6ab 100644 --- a/Apps/MetaReadShared/docker-compose.yml +++ b/Apps/MetaReadShared/docker-compose.yml @@ -179,7 +179,7 @@ services: caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 3000}}" - caddy_1: metaread-${APP_PUBLIC_IP_DASH}.nip.io + caddy_1: metaread-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 3000}}" @@ -208,7 +208,7 @@ services: - 80 environment: OIDC_REGISTRAR_URL: "http://auth-registrar:9092" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" BACKEND_HOST: "metaread-search" BACKEND_PORT: "3000" LISTEN_PORT: "80" @@ -216,7 +216,7 @@ services: caddy_0: metareadsearch-${APP_DOMAIN} caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 80}}" - caddy_1: metareadsearch-${APP_PUBLIC_IP_DASH}.nip.io + caddy_1: metareadsearch-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 80}}" caddy_2: metareadsearch-${APP_PUBLIC_IP_DASH}.sslip.io diff --git a/Apps/MetaShare/docker-compose.yml b/Apps/MetaShare/docker-compose.yml index bc13e8f..8f20d73 100644 --- a/Apps/MetaShare/docker-compose.yml +++ b/Apps/MetaShare/docker-compose.yml @@ -86,7 +86,7 @@ services: BACKEND_HOST: "metashare-app" BACKEND_PORT: "3000" LISTEN_PORT: "80" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" depends_on: - metashare-app @@ -115,8 +115,8 @@ services: caddy_0.6_handle: "" caddy_0.6_handle.reverse_proxy: "{{upstreams 80}}" - # ---- metashare-IP.nip.io (gateway TLS) ---- - caddy_1: metashare-${APP_PUBLIC_IP_DASH}.nip.io + # ---- metashare-IP. (gateway TLS) ---- + caddy_1: metashare-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.0_handle: "/health" caddy_1.0_handle.reverse_proxy: "metashare-app:3000" diff --git a/Apps/MetaSort/docker-compose.yml b/Apps/MetaSort/docker-compose.yml index cb86184..4bed312 100644 --- a/Apps/MetaSort/docker-compose.yml +++ b/Apps/MetaSort/docker-compose.yml @@ -89,7 +89,7 @@ services: BACKEND_HOST: "metasort-app" BACKEND_PORT: "80" LISTEN_PORT: "80" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" depends_on: - metasort-app @@ -108,8 +108,8 @@ services: caddy_0.1_handle: "" caddy_0.1_handle.reverse_proxy: "{{upstreams 80}}" - # ---- metasort-IP.nip.io (gateway TLS) ---- - caddy_1: metasort-${APP_PUBLIC_IP_DASH}.nip.io + # ---- metasort-IP. (gateway TLS) ---- + caddy_1: metasort-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.0_handle: "/health" caddy_1.0_handle.reverse_proxy: "metasort-app:80" diff --git a/Apps/MetaStremio/docker-compose.yml b/Apps/MetaStremio/docker-compose.yml index 406d126..8cbdf83 100644 --- a/Apps/MetaStremio/docker-compose.yml +++ b/Apps/MetaStremio/docker-compose.yml @@ -45,7 +45,7 @@ services: caddy_0: metastremio-${APP_DOMAIN} caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 7000}}" - caddy_1: metastremio-${APP_PUBLIC_IP_DASH}.nip.io + caddy_1: metastremio-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 7000}}" caddy_2: metastremio-${APP_PUBLIC_IP_DASH}.sslip.io diff --git a/Apps/MetaWatch/docker-compose.yml b/Apps/MetaWatch/docker-compose.yml index 8523d32..d0548f0 100644 --- a/Apps/MetaWatch/docker-compose.yml +++ b/Apps/MetaWatch/docker-compose.yml @@ -310,7 +310,7 @@ services: BACKEND_HOST: "metawatch-app" BACKEND_PORT: "3000" LISTEN_PORT: "80" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" depends_on: - metawatch-app labels: @@ -322,8 +322,8 @@ services: caddy_0.1_handle: "" caddy_0.1_handle.reverse_proxy: "{{upstreams 80}}" - # ---- metawatch-IP.nip.io (gateway TLS) ---- - caddy_1: metawatch-${APP_PUBLIC_IP_DASH}.nip.io + # ---- metawatch-IP. (gateway TLS) ---- + caddy_1: metawatch-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.0_handle: "/health" caddy_1.0_handle.reverse_proxy: "metawatch-app:3000" @@ -359,7 +359,7 @@ services: expose: ["80"] environment: OIDC_REGISTRAR_URL: "http://auth-registrar:9092" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" BACKEND_HOST: "metawatch-share" BACKEND_PORT: "3000" LISTEN_PORT: "80" @@ -367,7 +367,7 @@ services: caddy_0: metawatchshare-${APP_DOMAIN} caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 80}}" - caddy_1: metawatchshare-${APP_PUBLIC_IP_DASH}.nip.io + caddy_1: metawatchshare-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 80}}" caddy_2: metawatchshare-${APP_PUBLIC_IP_DASH}.sslip.io @@ -388,7 +388,7 @@ services: expose: ["80"] environment: OIDC_REGISTRAR_URL: "http://auth-registrar:9092" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" BACKEND_HOST: "metawatch-search" BACKEND_PORT: "3000" LISTEN_PORT: "80" @@ -396,7 +396,7 @@ services: caddy_0: metawatchsearch-${APP_DOMAIN} caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 80}}" - caddy_1: metawatchsearch-${APP_PUBLIC_IP_DASH}.nip.io + caddy_1: metawatchsearch-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 80}}" caddy_2: metawatchsearch-${APP_PUBLIC_IP_DASH}.sslip.io diff --git a/Apps/MetaWatchShared/docker-compose.yml b/Apps/MetaWatchShared/docker-compose.yml index 8b24e04..4646aea 100644 --- a/Apps/MetaWatchShared/docker-compose.yml +++ b/Apps/MetaWatchShared/docker-compose.yml @@ -159,8 +159,8 @@ services: caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 3000}}" - # ---- metawatch-IP.nip.io (gateway TLS) ---- - caddy_1: metawatch-${APP_PUBLIC_IP_DASH}.nip.io + # ---- metawatch-IP. (gateway TLS) ---- + caddy_1: metawatch-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 3000}}" @@ -197,7 +197,7 @@ services: BACKEND_HOST: "metawatch-search" BACKEND_PORT: "3000" LISTEN_PORT: "80" - REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.nip.io,${APP_PUBLIC_IP_DASH}.sslip.io" + REDIRECT_HOST_SUFFIXES: "${APP_DOMAIN},${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE},${APP_PUBLIC_IP_DASH}.sslip.io" depends_on: - metawatch-search labels: @@ -205,7 +205,7 @@ services: caddy_0.import: gateway_tls caddy_0.reverse_proxy: "{{upstreams 80}}" - caddy_1: metawatchsearch-${APP_PUBLIC_IP_DASH}.nip.io + caddy_1: metawatchsearch-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE} caddy_1.import: gateway_tls caddy_1.reverse_proxy: "{{upstreams 80}}" diff --git a/CLAUDE.md b/CLAUDE.md index 0020af8..05c7fe1 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -40,7 +40,7 @@ grep -rn 'cdn.jsdelivr.net/gh/Worph' Apps/ # must be empty - **Networking**: `expose`, not `ports`; main services join the external `pcs` network for Caddy routing. Three caddy labels per public service: `caddy_0` gateway domain (`appname-${APP_DOMAIN}`, `gateway_tls` import), - `caddy_1` nip.io, `caddy_2` sslip.io (Let's Encrypt, no import) + `caddy_1` `-${APP_PUBLIC_IP_DASH}.${APP_IP_ZONE}` (the IP zone, `gateway_tls` import), `caddy_2` sslip.io (Let's Encrypt, no import) - **`store_app_id`** is the lowercased app name (`MetaFeederTMDB` → `metafeedertmdb`) - **Images**: pulled from IPCR on watch.nsl.sh, `ipcr-watch.nsl.sh/ipns/metadec.eth/metadec.eth/:`, pinned to explicit versions (built by each repo's `.gitea/workflows/` on gitea-watch.nsl.sh/metastar on `v*` tags;