feat: use ${SUBDOMAIN} variable in all templates

All 51 docker-compose.yml: replaced hardcoded subdomain.${DOMAIN}
with ${SUBDOMAIN}.${DOMAIN} in Traefik labels, app env vars, and
comments.

All 51 .felhom.yml: added SUBDOMAIN deploy field (type: subdomain)
with default matching existing subdomain metadata value.

Works with felhom-controller v0.27.0 which validates and stores the
user-chosen subdomain in app.yaml. Existing deployed apps get
SUBDOMAIN auto-injected via InjectMissingFields() on next sync.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-22 15:06:44 +01:00
parent a969cbd557
commit 87d0e5e59d
102 changed files with 542 additions and 134 deletions
+8
View File
@@ -57,6 +57,14 @@ deploy_fields:
description: "A szerver domain neve"
locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "paperless"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: DB_PASSWORD
label: "Adatbázis jelszó"
type: secret
+3 -3
View File
@@ -1,5 +1,5 @@
# Paperless-ngx - Document Management System (DMS)
# Domain: paperless.${DOMAIN}
# Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: PostgreSQL + Redis
# RAM: ~500MB (mem_limit: 1152M total — paperless 768M + postgres 256M + redis 128M) | Pi-compatible: Yes (arm64, 4GB+ RAM recommended)
#
@@ -40,7 +40,7 @@ services:
- PAPERLESS_DBPASS=${DB_PASSWORD}
- PAPERLESS_DBNAME=paperless
- PAPERLESS_SECRET_KEY=${PAPERLESS_SECRET_KEY}
- PAPERLESS_URL=https://paperless.${DOMAIN}
- PAPERLESS_URL=https://${SUBDOMAIN}.${DOMAIN}
- PAPERLESS_TIME_ZONE=Europe/Budapest
- PAPERLESS_OCR_LANGUAGE=${PAPERLESS_OCR_LANGUAGE:-eng}
- PAPERLESS_OCR_LANGUAGES=${PAPERLESS_OCR_LANGUAGE:-}
@@ -72,7 +72,7 @@ services:
start_period: 60s
labels:
- "traefik.enable=true"
- "traefik.http.routers.paperless.rule=Host(`paperless.${DOMAIN}`)"
- "traefik.http.routers.paperless.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.paperless.entrypoints=websecure"
- "traefik.http.routers.paperless.tls=true"
- "traefik.http.routers.paperless.tls.certresolver=letsencrypt"