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
@@ -29,6 +29,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "budget"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: 'Költségvetés tervező - pénzügyeid kézben tartása egyszerűen' tagline: 'Költségvetés tervező - pénzügyeid kézben tartása egyszerűen'
+2 -2
View File
@@ -1,5 +1,5 @@
# ActualBudget - Personal Finance / Budgeting # ActualBudget - Personal Finance / Budgeting
# Domain: budget.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~50MB (mem_limit: 256M) | Pi-compatible: Yes # RAM: ~50MB (mem_limit: 256M) | Pi-compatible: Yes
# #
@@ -32,7 +32,7 @@ services:
start_period: 10s start_period: 10s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.actualbudget.rule=Host(`budget.${DOMAIN}`)" - "traefik.http.routers.actualbudget.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.actualbudget.entrypoints=websecure" - "traefik.http.routers.actualbudget.entrypoints=websecure"
- "traefik.http.routers.actualbudget.tls=true" - "traefik.http.routers.actualbudget.tls=true"
- "traefik.http.routers.actualbudget.tls.certresolver=letsencrypt" - "traefik.http.routers.actualbudget.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "travel"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: SECRET_KEY - env_var: SECRET_KEY
label: "Titkosítási kulcs" label: "Titkosítási kulcs"
type: secret type: secret
+6 -6
View File
@@ -1,5 +1,5 @@
# AdventureLog - Utazási napló és kalandtervező # AdventureLog - Utazási napló és kalandtervező
# Domain: travel.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: postgres # Database: postgres
# RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes # RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes
# #
@@ -22,9 +22,9 @@ services:
- PGDATABASE=adventurelog - PGDATABASE=adventurelog
- PGUSER=adventurelog - PGUSER=adventurelog
- PGPASSWORD=${DB_PASSWORD} - PGPASSWORD=${DB_PASSWORD}
- PUBLIC_URL=https://travel.${DOMAIN} - PUBLIC_URL=https://${SUBDOMAIN}.${DOMAIN}
- CSRF_TRUSTED_ORIGINS=https://travel.${DOMAIN} - CSRF_TRUSTED_ORIGINS=https://${SUBDOMAIN}.${DOMAIN}
- FRONTEND_URL=https://travel.${DOMAIN} - FRONTEND_URL=https://${SUBDOMAIN}.${DOMAIN}
volumes: volumes:
- adventurelog_media:/code/media - adventurelog_media:/code/media
networks: networks:
@@ -70,13 +70,13 @@ services:
environment: environment:
- PUBLIC_SERVER_URL=http://adventurelog:8000 - PUBLIC_SERVER_URL=http://adventurelog:8000
- BODY_SIZE_LIMIT=Infinity - BODY_SIZE_LIMIT=Infinity
- ORIGIN=https://travel.${DOMAIN} - ORIGIN=https://${SUBDOMAIN}.${DOMAIN}
networks: networks:
- traefik-public - traefik-public
- adventurelog-internal - adventurelog-internal
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.adventurelog.rule=Host(`travel.${DOMAIN}`)" - "traefik.http.routers.adventurelog.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.adventurelog.entrypoints=websecure" - "traefik.http.routers.adventurelog.entrypoints=websecure"
- "traefik.http.routers.adventurelog.tls=true" - "traefik.http.routers.adventurelog.tls=true"
- "traefik.http.routers.adventurelog.tls.certresolver=letsencrypt" - "traefik.http.routers.adventurelog.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "audiobooks"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: HDD_PATH - env_var: HDD_PATH
label: "Hangoskönyv tár útvonal" label: "Hangoskönyv tár útvonal"
type: path type: path
+2 -2
View File
@@ -1,5 +1,5 @@
# Audiobookshelf - Hangoskönyv és podcast kezelő szerver # Audiobookshelf - Hangoskönyv és podcast kezelő szerver
# Domain: audiobooks.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~100M (mem_limit: 512M) | Pi-compatible: Yes # RAM: ~100M (mem_limit: 512M) | Pi-compatible: Yes
# #
@@ -33,7 +33,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.audiobookshelf.rule=Host(`audiobooks.${DOMAIN}`)" - "traefik.http.routers.audiobookshelf.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.audiobookshelf.entrypoints=websecure" - "traefik.http.routers.audiobookshelf.entrypoints=websecure"
- "traefik.http.routers.audiobookshelf.tls=true" - "traefik.http.routers.audiobookshelf.tls=true"
- "traefik.http.routers.audiobookshelf.tls.certresolver=letsencrypt" - "traefik.http.routers.audiobookshelf.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "pdf"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Adatvédelmi fókuszú PDF eszköztár - a fájlok soha nem hagyják el a szervered" tagline: "Adatvédelmi fókuszú PDF eszköztár - a fájlok soha nem hagyják el a szervered"
+2 -2
View File
@@ -1,5 +1,5 @@
# BentoPDF - Adatvédelmi fókuszú PDF eszköztár # BentoPDF - Adatvédelmi fókuszú PDF eszköztár
# Domain: pdf.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes # RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes
# #
@@ -27,7 +27,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.bentopdf.rule=Host(`pdf.${DOMAIN}`)" - "traefik.http.routers.bentopdf.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.bentopdf.entrypoints=websecure" - "traefik.http.routers.bentopdf.entrypoints=websecure"
- "traefik.http.routers.bentopdf.tls=true" - "traefik.http.routers.bentopdf.tls=true"
- "traefik.http.routers.bentopdf.tls.certresolver=letsencrypt" - "traefik.http.routers.bentopdf.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "wiki"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: APP_KEY - env_var: APP_KEY
label: "Alkalmazás kulcs" label: "Alkalmazás kulcs"
type: secret type: secret
+3 -3
View File
@@ -1,5 +1,5 @@
# BookStack - Egyszerű, könyv-szerű wiki és dokumentáció platform # BookStack - Egyszerű, könyv-szerű wiki és dokumentáció platform
# Domain: wiki.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: mariadb # Database: mariadb
# RAM: ~150M (mem_limit: 512M) | Pi-compatible: Yes # RAM: ~150M (mem_limit: 512M) | Pi-compatible: Yes
# #
@@ -26,7 +26,7 @@ services:
- DB_PASSWORD=${DB_PASSWORD} - DB_PASSWORD=${DB_PASSWORD}
- DB_DATABASE=bookstack - DB_DATABASE=bookstack
- APP_KEY=${APP_KEY} - APP_KEY=${APP_KEY}
- APP_URL=https://wiki.${DOMAIN} - APP_URL=https://${SUBDOMAIN}.${DOMAIN}
volumes: volumes:
- bookstack_config:/config - bookstack_config:/config
networks: networks:
@@ -44,7 +44,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.bookstack.rule=Host(`wiki.${DOMAIN}`)" - "traefik.http.routers.bookstack.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.bookstack.entrypoints=websecure" - "traefik.http.routers.bookstack.entrypoints=websecure"
- "traefik.http.routers.bookstack.tls=true" - "traefik.http.routers.bookstack.tls=true"
- "traefik.http.routers.bookstack.tls.certresolver=letsencrypt" - "traefik.http.routers.bookstack.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "cal"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: NEXTAUTH_SECRET - env_var: NEXTAUTH_SECRET
label: "NextAuth titkosítási kulcs" label: "NextAuth titkosítási kulcs"
type: secret type: secret
+4 -4
View File
@@ -1,5 +1,5 @@
# Cal.com - Nyílt forráskódú időpontfoglaló (Calendly alternatíva) # Cal.com - Nyílt forráskódú időpontfoglaló (Calendly alternatíva)
# Domain: cal.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: postgres # Database: postgres
# RAM: ~200M (mem_limit: 768M) | Pi-compatible: No # RAM: ~200M (mem_limit: 768M) | Pi-compatible: No
# #
@@ -21,8 +21,8 @@ services:
- NEXTAUTH_SECRET=${NEXTAUTH_SECRET} - NEXTAUTH_SECRET=${NEXTAUTH_SECRET}
- CALENDSO_ENCRYPTION_KEY=${CALENDSO_ENCRYPTION_KEY} - CALENDSO_ENCRYPTION_KEY=${CALENDSO_ENCRYPTION_KEY}
- DATABASE_URL=postgresql://calcom:${DB_PASSWORD}@calcom-postgres:5432/calcom - DATABASE_URL=postgresql://calcom:${DB_PASSWORD}@calcom-postgres:5432/calcom
- NEXT_PUBLIC_WEBAPP_URL=https://cal.${DOMAIN} - NEXT_PUBLIC_WEBAPP_URL=https://${SUBDOMAIN}.${DOMAIN}
- NEXTAUTH_URL=https://cal.${DOMAIN} - NEXTAUTH_URL=https://${SUBDOMAIN}.${DOMAIN}
networks: networks:
- traefik-public - traefik-public
- calcom-internal - calcom-internal
@@ -38,7 +38,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.calcom.rule=Host(`cal.${DOMAIN}`)" - "traefik.http.routers.calcom.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.calcom.entrypoints=websecure" - "traefik.http.routers.calcom.entrypoints=websecure"
- "traefik.http.routers.calcom.tls=true" - "traefik.http.routers.calcom.tls=true"
- "traefik.http.routers.calcom.tls.certresolver=letsencrypt" - "traefik.http.routers.calcom.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "books"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: HDD_PATH - env_var: HDD_PATH
label: "E-könyvtár útvonal" label: "E-könyvtár útvonal"
type: path type: path
+2 -2
View File
@@ -1,5 +1,5 @@
# Calibre-Web Automated - Automatizált e-könyv könyvtár # Calibre-Web Automated - Automatizált e-könyv könyvtár
# Domain: books.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~200M (mem_limit: 768M) | Pi-compatible: No # RAM: ~200M (mem_limit: 768M) | Pi-compatible: No
# #
@@ -42,7 +42,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.calibre-web.rule=Host(`books.${DOMAIN}`)" - "traefik.http.routers.calibre-web.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.calibre-web.entrypoints=websecure" - "traefik.http.routers.calibre-web.entrypoints=websecure"
- "traefik.http.routers.calibre-web.tls=true" - "traefik.http.routers.calibre-web.tls=true"
- "traefik.http.routers.calibre-web.tls.certresolver=letsencrypt" - "traefik.http.routers.calibre-web.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "present"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: SECRET_KEY_BASE - env_var: SECRET_KEY_BASE
label: "Titkosítási kulcs" label: "Titkosítási kulcs"
type: secret type: secret
+3 -3
View File
@@ -1,5 +1,5 @@
# Claper - Interaktív prezentáció és közönség bevonás # Claper - Interaktív prezentáció és közönség bevonás
# Domain: present.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: postgres # Database: postgres
# RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes # RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes
# #
@@ -19,7 +19,7 @@ services:
environment: environment:
- DATABASE_URL=postgresql://claper:${DB_PASSWORD}@claper-postgres:5432/claper - DATABASE_URL=postgresql://claper:${DB_PASSWORD}@claper-postgres:5432/claper
- SECRET_KEY_BASE=${SECRET_KEY_BASE} - SECRET_KEY_BASE=${SECRET_KEY_BASE}
- BASE_URL=https://present.${DOMAIN} - BASE_URL=https://${SUBDOMAIN}.${DOMAIN}
volumes: volumes:
- claper_uploads:/app/priv/static/uploads - claper_uploads:/app/priv/static/uploads
networks: networks:
@@ -37,7 +37,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.claper.rule=Host(`present.${DOMAIN}`)" - "traefik.http.routers.claper.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.claper.entrypoints=websecure" - "traefik.http.routers.claper.entrypoints=websecure"
- "traefik.http.routers.claper.tls=true" - "traefik.http.routers.claper.tls=true"
- "traefik.http.routers.claper.tls.certresolver=letsencrypt" - "traefik.http.routers.claper.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "code"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: PASSWORD - env_var: PASSWORD
label: "Hozzáférési jelszó" label: "Hozzáférési jelszó"
type: secret type: secret
+2 -2
View File
@@ -1,5 +1,5 @@
# Code-Server - VS Code a böngészőben - kódolás bárhonnan # Code-Server - VS Code a böngészőben - kódolás bárhonnan
# Domain: code.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~200M (mem_limit: 1024M) | Pi-compatible: No # RAM: ~200M (mem_limit: 1024M) | Pi-compatible: No
# #
@@ -34,7 +34,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.code-server.rule=Host(`code.${DOMAIN}`)" - "traefik.http.routers.code-server.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.code-server.entrypoints=websecure" - "traefik.http.routers.code-server.entrypoints=websecure"
- "traefik.http.routers.code-server.tls=true" - "traefik.http.routers.code-server.tls=true"
- "traefik.http.routers.code-server.tls.certresolver=letsencrypt" - "traefik.http.routers.code-server.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "minecraft"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Minecraft szerver kezelő - hozd létre a saját világodat" tagline: "Minecraft szerver kezelő - hozd létre a saját világodat"
@@ -1,5 +1,5 @@
# Crafty Controller - Minecraft szerver kezelő webes felülettel # Crafty Controller - Minecraft szerver kezelő webes felülettel
# Domain: minecraft.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~256M (mem_limit: 2048M) | Pi-compatible: No # RAM: ~256M (mem_limit: 2048M) | Pi-compatible: No
# #
@@ -33,7 +33,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.crafty-controller.rule=Host(`minecraft.${DOMAIN}`)" - "traefik.http.routers.crafty-controller.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.crafty-controller.entrypoints=websecure" - "traefik.http.routers.crafty-controller.entrypoints=websecure"
- "traefik.http.routers.crafty-controller.tls=true" - "traefik.http.routers.crafty-controller.tls=true"
- "traefik.http.routers.crafty-controller.tls.certresolver=letsencrypt" - "traefik.http.routers.crafty-controller.tls.certresolver=letsencrypt"
+8
View File
@@ -29,6 +29,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "docs"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: APP_SECRET - env_var: APP_SECRET
label: "Alkalmazás titkosítási kulcs" label: "Alkalmazás titkosítási kulcs"
type: secret type: secret
+3 -3
View File
@@ -1,5 +1,5 @@
# Docmost - Modern Wiki / Documentation (Notion-like) # Docmost - Modern Wiki / Documentation (Notion-like)
# Domain: docs.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: PostgreSQL + Redis # Database: PostgreSQL + Redis
# RAM: ~200MB (mem_limit: 768M total — docmost 384M + postgres 256M + redis 128M) | Pi-compatible: No (heavy) # RAM: ~200MB (mem_limit: 768M total — docmost 384M + postgres 256M + redis 128M) | Pi-compatible: No (heavy)
# #
@@ -25,7 +25,7 @@ services:
- APP_SECRET=${APP_SECRET} - APP_SECRET=${APP_SECRET}
- DATABASE_URL=postgresql://docmost:${DB_PASSWORD}@docmost-postgres:5432/docmost - DATABASE_URL=postgresql://docmost:${DB_PASSWORD}@docmost-postgres:5432/docmost
- REDIS_URL=redis://docmost-redis:6379 - REDIS_URL=redis://docmost-redis:6379
- APP_URL=https://docs.${DOMAIN} - APP_URL=https://${SUBDOMAIN}.${DOMAIN}
- STORAGE_DRIVER=local - STORAGE_DRIVER=local
- FILE_UPLOAD_SIZE_LIMIT=50mb - FILE_UPLOAD_SIZE_LIMIT=50mb
- TZ=Europe/Budapest - TZ=Europe/Budapest
@@ -46,7 +46,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.docmost.rule=Host(`docs.${DOMAIN}`)" - "traefik.http.routers.docmost.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.docmost.entrypoints=websecure" - "traefik.http.routers.docmost.entrypoints=websecure"
- "traefik.http.routers.docmost.tls=true" - "traefik.http.routers.docmost.tls=true"
- "traefik.http.routers.docmost.tls.certresolver=letsencrypt" - "traefik.http.routers.docmost.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "emby"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: HDD_PATH - env_var: HDD_PATH
label: "Médiatár útvonal" label: "Médiatár útvonal"
type: path type: path
+2 -2
View File
@@ -1,5 +1,5 @@
# Emby - Személyes média szerver élő TV és DVR támogatással # Emby - Személyes média szerver élő TV és DVR támogatással
# Domain: emby.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~512M (mem_limit: 2048M) | Pi-compatible: No # RAM: ~512M (mem_limit: 2048M) | Pi-compatible: No
# #
@@ -33,7 +33,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.emby.rule=Host(`emby.${DOMAIN}`)" - "traefik.http.routers.emby.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.emby.entrypoints=websecure" - "traefik.http.routers.emby.entrypoints=websecure"
- "traefik.http.routers.emby.tls=true" - "traefik.http.routers.emby.tls=true"
- "traefik.http.routers.emby.tls.certresolver=letsencrypt" - "traefik.http.routers.emby.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "blog"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Professzionális blog és hírlevél platform" tagline: "Professzionális blog és hírlevél platform"
+3 -3
View File
@@ -1,5 +1,5 @@
# Ghost - Professzionális blog és hírlevél platform # Ghost - Professzionális blog és hírlevél platform
# Domain: blog.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~150M (mem_limit: 512M) | Pi-compatible: No # RAM: ~150M (mem_limit: 512M) | Pi-compatible: No
# #
@@ -14,7 +14,7 @@ services:
environment: environment:
- TZ=Europe/Budapest - TZ=Europe/Budapest
- NODE_ENV=production - NODE_ENV=production
- url=https://blog.${DOMAIN} - url=https://${SUBDOMAIN}.${DOMAIN}
- database__client=sqlite3 - database__client=sqlite3
- database__connection__filename=content/data/ghost.db - database__connection__filename=content/data/ghost.db
volumes: volumes:
@@ -33,7 +33,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.ghost.rule=Host(`blog.${DOMAIN}`)" - "traefik.http.routers.ghost.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.ghost.entrypoints=websecure" - "traefik.http.routers.ghost.entrypoints=websecure"
- "traefik.http.routers.ghost.tls=true" - "traefik.http.routers.ghost.tls=true"
- "traefik.http.routers.ghost.tls.certresolver=letsencrypt" - "traefik.http.routers.ghost.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "git"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Saját Git szerver - GitHub-szerű felület, privát repók" tagline: "Saját Git szerver - GitHub-szerű felület, privát repók"
+4 -4
View File
@@ -1,5 +1,5 @@
# Gitea - Könnyű, saját Git szerver webes felülettel # Gitea - Könnyű, saját Git szerver webes felülettel
# Domain: git.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~100M (mem_limit: 512M) | Pi-compatible: Yes # RAM: ~100M (mem_limit: 512M) | Pi-compatible: Yes
# #
@@ -13,8 +13,8 @@ services:
restart: unless-stopped restart: unless-stopped
environment: environment:
- TZ=Europe/Budapest - TZ=Europe/Budapest
- GITEA__server__ROOT_URL=https://git.${DOMAIN} - GITEA__server__ROOT_URL=https://${SUBDOMAIN}.${DOMAIN}
- GITEA__server__SSH_DOMAIN=git.${DOMAIN} - GITEA__server__SSH_DOMAIN=${SUBDOMAIN}.${DOMAIN}
- GITEA__database__DB_TYPE=sqlite3 - GITEA__database__DB_TYPE=sqlite3
volumes: volumes:
- gitea_data:/data - gitea_data:/data
@@ -32,7 +32,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.gitea.rule=Host(`git.${DOMAIN}`)" - "traefik.http.routers.gitea.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.gitea.entrypoints=websecure" - "traefik.http.routers.gitea.entrypoints=websecure"
- "traefik.http.routers.gitea.tls=true" - "traefik.http.routers.gitea.tls=true"
- "traefik.http.routers.gitea.tls.certresolver=letsencrypt" - "traefik.http.routers.gitea.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "dashboard"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Minimalista dashboard - RSS, időjárás, könyvjelzők egy oldalon" tagline: "Minimalista dashboard - RSS, időjárás, könyvjelzők egy oldalon"
+2 -2
View File
@@ -1,5 +1,5 @@
# Glance - Minimalista információs dashboard # Glance - Minimalista információs dashboard
# Domain: dashboard.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~20M (mem_limit: 128M) | Pi-compatible: Yes # RAM: ~20M (mem_limit: 128M) | Pi-compatible: Yes
# #
@@ -29,7 +29,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.glance.rule=Host(`dashboard.${DOMAIN}`)" - "traefik.http.routers.glance.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.glance.entrypoints=websecure" - "traefik.http.routers.glance.entrypoints=websecure"
- "traefik.http.routers.glance.tls=true" - "traefik.http.routers.glance.tls=true"
- "traefik.http.routers.glance.tls.certresolver=letsencrypt" - "traefik.http.routers.glance.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "share"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Ideiglenes fájlmegosztás lejáró linkekkel" tagline: "Ideiglenes fájlmegosztás lejáró linkekkel"
+2 -2
View File
@@ -1,5 +1,5 @@
# Gokapi - Ideiglenes fájlmegosztás lejáró linkekkel # Gokapi - Ideiglenes fájlmegosztás lejáró linkekkel
# Domain: share.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~30M (mem_limit: 128M) | Pi-compatible: Yes # RAM: ~30M (mem_limit: 128M) | Pi-compatible: Yes
# #
@@ -30,7 +30,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.gokapi.rule=Host(`share.${DOMAIN}`)" - "traefik.http.routers.gokapi.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.gokapi.entrypoints=websecure" - "traefik.http.routers.gokapi.entrypoints=websecure"
- "traefik.http.routers.gokapi.tls=true" - "traefik.http.routers.gokapi.tls=true"
- "traefik.http.routers.gokapi.tls.certresolver=letsencrypt" - "traefik.http.routers.gokapi.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "grafana"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: GF_SECURITY_ADMIN_PASSWORD - env_var: GF_SECURITY_ADMIN_PASSWORD
label: "Admin jelszó" label: "Admin jelszó"
type: secret type: secret
+3 -3
View File
@@ -1,5 +1,5 @@
# Grafana - Professzionális monitoring és vizualizációs platform # Grafana - Professzionális monitoring és vizualizációs platform
# Domain: grafana.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~100M (mem_limit: 512M) | Pi-compatible: Yes # RAM: ~100M (mem_limit: 512M) | Pi-compatible: Yes
# #
@@ -14,7 +14,7 @@ services:
restart: unless-stopped restart: unless-stopped
environment: environment:
- TZ=Europe/Budapest - TZ=Europe/Budapest
- GF_SERVER_ROOT_URL=https://grafana.${DOMAIN} - GF_SERVER_ROOT_URL=https://${SUBDOMAIN}.${DOMAIN}
- GF_SECURITY_ADMIN_PASSWORD=${GF_SECURITY_ADMIN_PASSWORD:-admin} - GF_SECURITY_ADMIN_PASSWORD=${GF_SECURITY_ADMIN_PASSWORD:-admin}
volumes: volumes:
- grafana_data:/var/lib/grafana - grafana_data:/var/lib/grafana
@@ -32,7 +32,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.grafana.rule=Host(`grafana.${DOMAIN}`)" - "traefik.http.routers.grafana.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.grafana.entrypoints=websecure" - "traefik.http.routers.grafana.entrypoints=websecure"
- "traefik.http.routers.grafana.tls=true" - "traefik.http.routers.grafana.tls=true"
- "traefik.http.routers.grafana.tls.certresolver=letsencrypt" - "traefik.http.routers.grafana.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "family"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: GRAMPSWEB_SECRET_KEY - env_var: GRAMPSWEB_SECRET_KEY
label: "Titkosítási kulcs" label: "Titkosítási kulcs"
type: secret type: secret
+2 -2
View File
@@ -1,5 +1,5 @@
# Gramps Web - Családfa készítő és genealógiai szoftver # Gramps Web - Családfa készítő és genealógiai szoftver
# Domain: family.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes # RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes
# #
@@ -34,7 +34,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.gramps-web.rule=Host(`family.${DOMAIN}`)" - "traefik.http.routers.gramps-web.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.gramps-web.entrypoints=websecure" - "traefik.http.routers.gramps-web.entrypoints=websecure"
- "traefik.http.routers.gramps-web.tls=true" - "traefik.http.routers.gramps-web.tls=true"
- "traefik.http.routers.gramps-web.tls.certresolver=letsencrypt" - "traefik.http.routers.gramps-web.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "ha"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Okos otthon központ - automatizálás és vezérlés egy helyről" tagline: "Okos otthon központ - automatizálás és vezérlés egy helyről"
+2 -2
View File
@@ -1,5 +1,5 @@
# Home Assistant - Nyílt forráskódú okos otthon központ # Home Assistant - Nyílt forráskódú okos otthon központ
# Domain: ha.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~256M (mem_limit: 1024M) | Pi-compatible: Yes # RAM: ~256M (mem_limit: 1024M) | Pi-compatible: Yes
# #
@@ -29,7 +29,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.home-assistant.rule=Host(`ha.${DOMAIN}`)" - "traefik.http.routers.home-assistant.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.home-assistant.entrypoints=websecure" - "traefik.http.routers.home-assistant.entrypoints=websecure"
- "traefik.http.routers.home-assistant.tls=true" - "traefik.http.routers.home-assistant.tls=true"
- "traefik.http.routers.home-assistant.tls.certresolver=letsencrypt" - "traefik.http.routers.home-assistant.tls.certresolver=letsencrypt"
+8
View File
@@ -29,6 +29,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "inventory"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: 'Otthoni leltár kezelő - tartsd számon a tárgyaidat' tagline: 'Otthoni leltár kezelő - tartsd számon a tárgyaidat'
+2 -2
View File
@@ -1,5 +1,5 @@
# Homebox - Home Inventory Management # Homebox - Home Inventory Management
# Domain: inventory.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (SQLite, file-based) # Database: None (SQLite, file-based)
# RAM: ~50MB (mem_limit: 256M) | Pi-compatible: Yes # RAM: ~50MB (mem_limit: 256M) | Pi-compatible: Yes
# #
@@ -35,7 +35,7 @@ services:
start_period: 10s start_period: 10s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.homebox.rule=Host(`inventory.${DOMAIN}`)" - "traefik.http.routers.homebox.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.homebox.entrypoints=websecure" - "traefik.http.routers.homebox.entrypoints=websecure"
- "traefik.http.routers.homebox.tls=true" - "traefik.http.routers.homebox.tls=true"
- "traefik.http.routers.homebox.tls.certresolver=letsencrypt" - "traefik.http.routers.homebox.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "home"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Személyes kezdőlap - szolgáltatás státuszok és widgetek egy helyen" tagline: "Személyes kezdőlap - szolgáltatás státuszok és widgetek egy helyen"
+2 -2
View File
@@ -1,5 +1,5 @@
# Homepage - Személyre szabható kezdőlap szolgáltatás widgetekkel # Homepage - Személyre szabható kezdőlap szolgáltatás widgetekkel
# Domain: home.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes # RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes
# #
@@ -30,7 +30,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.homepage.rule=Host(`home.${DOMAIN}`)" - "traefik.http.routers.homepage.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.homepage.entrypoints=websecure" - "traefik.http.routers.homepage.entrypoints=websecure"
- "traefik.http.routers.homepage.tls=true" - "traefik.http.routers.homepage.tls=true"
- "traefik.http.routers.homepage.tls.certresolver=letsencrypt" - "traefik.http.routers.homepage.tls.certresolver=letsencrypt"
+8
View File
@@ -29,6 +29,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "photos"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: DB_PASSWORD - env_var: DB_PASSWORD
label: "Adatbázis jelszó" label: "Adatbázis jelszó"
type: secret type: secret
+2 -2
View File
@@ -1,5 +1,5 @@
# Immich - Self-hosted Photo & Video Management # Immich - Self-hosted Photo & Video Management
# Domain: photos.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: PostgreSQL (with VectorChord) + Redis # Database: PostgreSQL (with VectorChord) + Redis
# RAM: ~4GB minimum (mem_limit: 4096M total — server 2048M + ML 1536M + postgres 256M + redis 128M) | Pi-compatible: No (ML too heavy) # RAM: ~4GB minimum (mem_limit: 4096M total — server 2048M + ML 1536M + postgres 256M + redis 128M) | Pi-compatible: No (ML too heavy)
# #
@@ -52,7 +52,7 @@ services:
start_period: 60s start_period: 60s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.immich.rule=Host(`photos.${DOMAIN}`)" - "traefik.http.routers.immich.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.immich.entrypoints=websecure" - "traefik.http.routers.immich.entrypoints=websecure"
- "traefik.http.routers.immich.tls=true" - "traefik.http.routers.immich.tls=true"
- "traefik.http.routers.immich.tls.certresolver=letsencrypt" - "traefik.http.routers.immich.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "media"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: HDD_PATH - env_var: HDD_PATH
label: "Médiatár útvonal" label: "Médiatár útvonal"
type: path type: path
+2 -2
View File
@@ -1,5 +1,5 @@
# Jellyfin - Ingyenes és nyílt forráskódú média szerver # Jellyfin - Ingyenes és nyílt forráskódú média szerver
# Domain: media.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~512M (mem_limit: 2048M) | Pi-compatible: No # RAM: ~512M (mem_limit: 2048M) | Pi-compatible: No
# #
@@ -32,7 +32,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.jellyfin.rule=Host(`media.${DOMAIN}`)" - "traefik.http.routers.jellyfin.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.jellyfin.entrypoints=websecure" - "traefik.http.routers.jellyfin.entrypoints=websecure"
- "traefik.http.routers.jellyfin.tls=true" - "traefik.http.routers.jellyfin.tls=true"
- "traefik.http.routers.jellyfin.tls.certresolver=letsencrypt" - "traefik.http.routers.jellyfin.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "time"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: DB_PASSWORD - env_var: DB_PASSWORD
label: "Adatbázis jelszó" label: "Adatbázis jelszó"
type: secret type: secret
+2 -2
View File
@@ -1,5 +1,5 @@
# Kimai - Időkövetés és projektmenedzsment # Kimai - Időkövetés és projektmenedzsment
# Domain: time.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: mariadb # Database: mariadb
# RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes # RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes
# #
@@ -39,7 +39,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.kimai.rule=Host(`time.${DOMAIN}`)" - "traefik.http.routers.kimai.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.kimai.entrypoints=websecure" - "traefik.http.routers.kimai.entrypoints=websecure"
- "traefik.http.routers.kimai.tls=true" - "traefik.http.routers.kimai.tls=true"
- "traefik.http.routers.kimai.tls.certresolver=letsencrypt" - "traefik.http.routers.kimai.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "comics"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: HDD_PATH - env_var: HDD_PATH
label: "Képregénytár útvonal" label: "Képregénytár útvonal"
type: path type: path
+2 -2
View File
@@ -1,5 +1,5 @@
# Komga - Képregény és manga szerver OPDS támogatással # Komga - Képregény és manga szerver OPDS támogatással
# Domain: comics.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~200M (mem_limit: 512M) | Pi-compatible: Yes # RAM: ~200M (mem_limit: 512M) | Pi-compatible: Yes
# #
@@ -31,7 +31,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.komga.rule=Host(`comics.${DOMAIN}`)" - "traefik.http.routers.komga.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.komga.entrypoints=websecure" - "traefik.http.routers.komga.entrypoints=websecure"
- "traefik.http.routers.komga.tls=true" - "traefik.http.routers.komga.tls=true"
- "traefik.http.routers.komga.tls.certresolver=letsencrypt" - "traefik.http.routers.komga.tls.certresolver=letsencrypt"
+8
View File
@@ -29,6 +29,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "recipes"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: 'Receptkezelő és étkezés tervező a családnak' tagline: 'Receptkezelő és étkezés tervező a családnak'
+3 -3
View File
@@ -1,5 +1,5 @@
# Mealie - Recipe Manager & Meal Planner # Mealie - Recipe Manager & Meal Planner
# Domain: recipes.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (SQLite, built-in) # Database: None (SQLite, built-in)
# RAM: ~200MB (mem_limit: 1000M) | Pi-compatible: Yes (arm64 only) # RAM: ~200MB (mem_limit: 1000M) | Pi-compatible: Yes (arm64 only)
# #
@@ -25,7 +25,7 @@ services:
- TZ=Europe/Budapest - TZ=Europe/Budapest
- MAX_WORKERS=1 - MAX_WORKERS=1
- WEB_CONCURRENCY=1 - WEB_CONCURRENCY=1
- BASE_URL=https://recipes.${DOMAIN} - BASE_URL=https://${SUBDOMAIN}.${DOMAIN}
volumes: volumes:
- mealie_data:/app/data/ - mealie_data:/app/data/
networks: networks:
@@ -42,7 +42,7 @@ services:
start_period: 60s start_period: 60s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.mealie.rule=Host(`recipes.${DOMAIN}`)" - "traefik.http.routers.mealie.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.mealie.entrypoints=websecure" - "traefik.http.routers.mealie.entrypoints=websecure"
- "traefik.http.routers.mealie.tls=true" - "traefik.http.routers.mealie.tls=true"
- "traefik.http.routers.mealie.tls.certresolver=letsencrypt" - "traefik.http.routers.mealie.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "auto"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: N8N_ENCRYPTION_KEY - env_var: N8N_ENCRYPTION_KEY
label: "Titkosítási kulcs" label: "Titkosítási kulcs"
type: secret type: secret
+4 -4
View File
@@ -1,5 +1,5 @@
# n8n - Workflow automatizálás vizuális szerkesztővel # n8n - Workflow automatizálás vizuális szerkesztővel
# Domain: auto.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~150M (mem_limit: 512M) | Pi-compatible: No # RAM: ~150M (mem_limit: 512M) | Pi-compatible: No
# #
@@ -14,9 +14,9 @@ services:
restart: unless-stopped restart: unless-stopped
environment: environment:
- TZ=Europe/Budapest - TZ=Europe/Budapest
- N8N_HOST=auto.${DOMAIN} - N8N_HOST=${SUBDOMAIN}.${DOMAIN}
- N8N_PROTOCOL=https - N8N_PROTOCOL=https
- WEBHOOK_URL=https://auto.${DOMAIN}/ - WEBHOOK_URL=https://${SUBDOMAIN}.${DOMAIN}/
- N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY} - N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY}
volumes: volumes:
- n8n_data:/home/node/.n8n - n8n_data:/home/node/.n8n
@@ -34,7 +34,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.n8n.rule=Host(`auto.${DOMAIN}`)" - "traefik.http.routers.n8n.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.n8n.entrypoints=websecure" - "traefik.http.routers.n8n.entrypoints=websecure"
- "traefik.http.routers.n8n.tls=true" - "traefik.http.routers.n8n.tls=true"
- "traefik.http.routers.n8n.tls.certresolver=letsencrypt" - "traefik.http.routers.n8n.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "music"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: HDD_PATH - env_var: HDD_PATH
label: "Zenegyűjtemény útvonal" label: "Zenegyűjtemény útvonal"
type: path type: path
+2 -2
View File
@@ -1,5 +1,5 @@
# Navidrome - Könnyű zene szerver Subsonic API támogatással # Navidrome - Könnyű zene szerver Subsonic API támogatással
# Domain: music.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes # RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes
# #
@@ -34,7 +34,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.navidrome.rule=Host(`music.${DOMAIN}`)" - "traefik.http.routers.navidrome.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.navidrome.entrypoints=websecure" - "traefik.http.routers.navidrome.entrypoints=websecure"
- "traefik.http.routers.navidrome.tls=true" - "traefik.http.routers.navidrome.tls=true"
- "traefik.http.routers.navidrome.tls.certresolver=letsencrypt" - "traefik.http.routers.navidrome.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "cloud"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: DB_PASSWORD - env_var: DB_PASSWORD
label: "Adatbázis jelszó" label: "Adatbázis jelszó"
type: secret type: secret
+4 -4
View File
@@ -1,5 +1,5 @@
# Nextcloud - Saját felhő tárhely - Google Drive/Dropbox alternatíva # Nextcloud - Saját felhő tárhely - Google Drive/Dropbox alternatíva
# Domain: cloud.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: mariadb # Database: mariadb
# RAM: ~256M (mem_limit: 1024M) | Pi-compatible: No # RAM: ~256M (mem_limit: 1024M) | Pi-compatible: No
# #
@@ -29,9 +29,9 @@ services:
- MYSQL_HOST=nextcloud-db - MYSQL_HOST=nextcloud-db
- NEXTCLOUD_ADMIN_USER=${NEXTCLOUD_ADMIN_USER:-admin} - NEXTCLOUD_ADMIN_USER=${NEXTCLOUD_ADMIN_USER:-admin}
- NEXTCLOUD_ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD} - NEXTCLOUD_ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD}
- NEXTCLOUD_TRUSTED_DOMAINS=cloud.${DOMAIN} - NEXTCLOUD_TRUSTED_DOMAINS=${SUBDOMAIN}.${DOMAIN}
- OVERWRITEPROTOCOL=https - OVERWRITEPROTOCOL=https
- OVERWRITEHOST=cloud.${DOMAIN} - OVERWRITEHOST=${SUBDOMAIN}.${DOMAIN}
- REDIS_HOST=nextcloud-redis - REDIS_HOST=nextcloud-redis
volumes: volumes:
- nextcloud_html:/var/www/html - nextcloud_html:/var/www/html
@@ -51,7 +51,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.nextcloud.rule=Host(`cloud.${DOMAIN}`)" - "traefik.http.routers.nextcloud.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.nextcloud.entrypoints=websecure" - "traefik.http.routers.nextcloud.entrypoints=websecure"
- "traefik.http.routers.nextcloud.tls=true" - "traefik.http.routers.nextcloud.tls=true"
- "traefik.http.routers.nextcloud.tls.certresolver=letsencrypt" - "traefik.http.routers.nextcloud.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "office"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: JWT_SECRET - env_var: JWT_SECRET
label: "JWT titkosítási kulcs" label: "JWT titkosítási kulcs"
type: secret type: secret
+2 -2
View File
@@ -1,5 +1,5 @@
# OnlyOffice - Teljes értékű irodai csomag a böngészőben # OnlyOffice - Teljes értékű irodai csomag a böngészőben
# Domain: office.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~512M (mem_limit: 2048M) | Pi-compatible: No # RAM: ~512M (mem_limit: 2048M) | Pi-compatible: No
# #
@@ -32,7 +32,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.onlyoffice.rule=Host(`office.${DOMAIN}`)" - "traefik.http.routers.onlyoffice.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.onlyoffice.entrypoints=websecure" - "traefik.http.routers.onlyoffice.entrypoints=websecure"
- "traefik.http.routers.onlyoffice.tls=true" - "traefik.http.routers.onlyoffice.tls=true"
- "traefik.http.routers.onlyoffice.tls.certresolver=letsencrypt" - "traefik.http.routers.onlyoffice.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "gist"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Kód snippetek megosztása - privát GitHub Gist alternatíva" tagline: "Kód snippetek megosztása - privát GitHub Gist alternatíva"
+3 -3
View File
@@ -1,5 +1,5 @@
# OpenGist - Kód snippetek megosztása (GitHub Gist alternatíva) # OpenGist - Kód snippetek megosztása (GitHub Gist alternatíva)
# Domain: gist.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~30M (mem_limit: 128M) | Pi-compatible: Yes # RAM: ~30M (mem_limit: 128M) | Pi-compatible: Yes
# #
@@ -13,7 +13,7 @@ services:
restart: unless-stopped restart: unless-stopped
environment: environment:
- TZ=Europe/Budapest - TZ=Europe/Budapest
- OG_EXTERNAL_URL=https://gist.${DOMAIN} - OG_EXTERNAL_URL=https://${SUBDOMAIN}.${DOMAIN}
volumes: volumes:
- opengist_data:/opengist - opengist_data:/opengist
networks: networks:
@@ -30,7 +30,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.opengist.rule=Host(`gist.${DOMAIN}`)" - "traefik.http.routers.opengist.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.opengist.entrypoints=websecure" - "traefik.http.routers.opengist.entrypoints=websecure"
- "traefik.http.routers.opengist.tls=true" - "traefik.http.routers.opengist.tls=true"
- "traefik.http.routers.opengist.tls.certresolver=letsencrypt" - "traefik.http.routers.opengist.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "kb"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: SECRET_KEY - env_var: SECRET_KEY
label: "Titkosítási kulcs" label: "Titkosítási kulcs"
type: secret type: secret
+3 -3
View File
@@ -1,5 +1,5 @@
# Outline - Modern csapat tudásbázis Markdown támogatással # Outline - Modern csapat tudásbázis Markdown támogatással
# Domain: kb.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: postgres # Database: postgres
# RAM: ~200M (mem_limit: 768M) | Pi-compatible: No # RAM: ~200M (mem_limit: 768M) | Pi-compatible: No
# #
@@ -25,7 +25,7 @@ services:
- UTILS_SECRET=${UTILS_SECRET} - UTILS_SECRET=${UTILS_SECRET}
- DATABASE_URL=postgres://outline:${DB_PASSWORD}@outline-postgres:5432/outline - DATABASE_URL=postgres://outline:${DB_PASSWORD}@outline-postgres:5432/outline
- REDIS_URL=redis://outline-redis:6379 - REDIS_URL=redis://outline-redis:6379
- URL=https://kb.${DOMAIN} - URL=https://${SUBDOMAIN}.${DOMAIN}
- PORT=3000 - PORT=3000
- FILE_STORAGE=local - FILE_STORAGE=local
- FILE_STORAGE_LOCAL_ROOT_DIR=/var/lib/outline/data - FILE_STORAGE_LOCAL_ROOT_DIR=/var/lib/outline/data
@@ -46,7 +46,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.outline.rule=Host(`kb.${DOMAIN}`)" - "traefik.http.routers.outline.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.outline.entrypoints=websecure" - "traefik.http.routers.outline.entrypoints=websecure"
- "traefik.http.routers.outline.tls=true" - "traefik.http.routers.outline.tls=true"
- "traefik.http.routers.outline.tls.certresolver=letsencrypt" - "traefik.http.routers.outline.tls.certresolver=letsencrypt"
+8
View File
@@ -57,6 +57,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true 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 - env_var: DB_PASSWORD
label: "Adatbázis jelszó" label: "Adatbázis jelszó"
type: secret type: secret
+3 -3
View File
@@ -1,5 +1,5 @@
# Paperless-ngx - Document Management System (DMS) # Paperless-ngx - Document Management System (DMS)
# Domain: paperless.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: PostgreSQL + Redis # Database: PostgreSQL + Redis
# RAM: ~500MB (mem_limit: 1152M total — paperless 768M + postgres 256M + redis 128M) | Pi-compatible: Yes (arm64, 4GB+ RAM recommended) # 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_DBPASS=${DB_PASSWORD}
- PAPERLESS_DBNAME=paperless - PAPERLESS_DBNAME=paperless
- PAPERLESS_SECRET_KEY=${PAPERLESS_SECRET_KEY} - PAPERLESS_SECRET_KEY=${PAPERLESS_SECRET_KEY}
- PAPERLESS_URL=https://paperless.${DOMAIN} - PAPERLESS_URL=https://${SUBDOMAIN}.${DOMAIN}
- PAPERLESS_TIME_ZONE=Europe/Budapest - PAPERLESS_TIME_ZONE=Europe/Budapest
- PAPERLESS_OCR_LANGUAGE=${PAPERLESS_OCR_LANGUAGE:-eng} - PAPERLESS_OCR_LANGUAGE=${PAPERLESS_OCR_LANGUAGE:-eng}
- PAPERLESS_OCR_LANGUAGES=${PAPERLESS_OCR_LANGUAGE:-} - PAPERLESS_OCR_LANGUAGES=${PAPERLESS_OCR_LANGUAGE:-}
@@ -72,7 +72,7 @@ services:
start_period: 60s start_period: 60s
labels: labels:
- "traefik.enable=true" - "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.entrypoints=websecure"
- "traefik.http.routers.paperless.tls=true" - "traefik.http.routers.paperless.tls=true"
- "traefik.http.routers.paperless.tls.certresolver=letsencrypt" - "traefik.http.routers.paperless.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "papra"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Minimalista dokumentumtár - egyszerű rendszerezés és keresés" tagline: "Minimalista dokumentumtár - egyszerű rendszerezés és keresés"
+3 -3
View File
@@ -1,5 +1,5 @@
# Papra - Minimalista dokumentumtár és rendszerező # Papra - Minimalista dokumentumtár és rendszerező
# Domain: papra.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes # RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes
# #
@@ -13,7 +13,7 @@ services:
restart: unless-stopped restart: unless-stopped
environment: environment:
- TZ=Europe/Budapest - TZ=Europe/Budapest
- APP_BASE_URL=https://papra.${DOMAIN} - APP_BASE_URL=https://${SUBDOMAIN}.${DOMAIN}
volumes: volumes:
- papra_data:/app/data - papra_data:/app/data
networks: networks:
@@ -30,7 +30,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.papra.rule=Host(`papra.${DOMAIN}`)" - "traefik.http.routers.papra.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.papra.entrypoints=websecure" - "traefik.http.routers.papra.entrypoints=websecure"
- "traefik.http.routers.papra.tls=true" - "traefik.http.routers.papra.tls=true"
- "traefik.http.routers.papra.tls.certresolver=letsencrypt" - "traefik.http.routers.papra.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "plants"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: JWT_SECRET - env_var: JWT_SECRET
label: "JWT titkosítási kulcs" label: "JWT titkosítási kulcs"
type: secret type: secret
+2 -2
View File
@@ -1,5 +1,5 @@
# Plant-it - Növénynapló és gondozás emlékeztető # Plant-it - Növénynapló és gondozás emlékeztető
# Domain: plants.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes # RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes
# #
@@ -35,7 +35,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.plant-it.rule=Host(`plants.${DOMAIN}`)" - "traefik.http.routers.plant-it.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.plant-it.entrypoints=websecure" - "traefik.http.routers.plant-it.entrypoints=websecure"
- "traefik.http.routers.plant-it.tls=true" - "traefik.http.routers.plant-it.tls=true"
- "traefik.http.routers.plant-it.tls.certresolver=letsencrypt" - "traefik.http.routers.plant-it.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "plex"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: PLEX_CLAIM - env_var: PLEX_CLAIM
label: "Plex Claim Token" label: "Plex Claim Token"
type: text type: text
+2 -2
View File
@@ -1,5 +1,5 @@
# Plex - Népszerű média szerver csiszolt felülettel # Plex - Népszerű média szerver csiszolt felülettel
# Domain: plex.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~512M (mem_limit: 2048M) | Pi-compatible: No # RAM: ~512M (mem_limit: 2048M) | Pi-compatible: No
# #
@@ -34,7 +34,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.plex.rule=Host(`plex.${DOMAIN}`)" - "traefik.http.routers.plex.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.plex.entrypoints=websecure" - "traefik.http.routers.plex.entrypoints=websecure"
- "traefik.http.routers.plex.tls=true" - "traefik.http.routers.plex.tls=true"
- "traefik.http.routers.plex.tls.certresolver=letsencrypt" - "traefik.http.routers.plex.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "paste"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Titkosított szöveg megosztás - a szerver nem látja a tartalmat" tagline: "Titkosított szöveg megosztás - a szerver nem látja a tartalmat"
+2 -2
View File
@@ -1,5 +1,5 @@
# PrivateBin - Titkosított jegyzet és szöveg megosztás # PrivateBin - Titkosított jegyzet és szöveg megosztás
# Domain: paste.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~30M (mem_limit: 128M) | Pi-compatible: Yes # RAM: ~30M (mem_limit: 128M) | Pi-compatible: Yes
# #
@@ -30,7 +30,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.privatebin.rule=Host(`paste.${DOMAIN}`)" - "traefik.http.routers.privatebin.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.privatebin.entrypoints=websecure" - "traefik.http.routers.privatebin.entrypoints=websecure"
- "traefik.http.routers.privatebin.tls=true" - "traefik.http.routers.privatebin.tls=true"
- "traefik.http.routers.privatebin.tls.certresolver=letsencrypt" - "traefik.http.routers.privatebin.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "radarr"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: HDD_PATH - env_var: HDD_PATH
label: "Médiatár útvonal" label: "Médiatár útvonal"
type: path type: path
+2 -2
View File
@@ -1,5 +1,5 @@
# Radarr - Automatikus film letöltő és rendszerező # Radarr - Automatikus film letöltő és rendszerező
# Domain: radarr.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~150M (mem_limit: 512M) | Pi-compatible: Yes # RAM: ~150M (mem_limit: 512M) | Pi-compatible: Yes
# #
@@ -34,7 +34,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.radarr.rule=Host(`radarr.${DOMAIN}`)" - "traefik.http.routers.radarr.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.radarr.entrypoints=websecure" - "traefik.http.routers.radarr.entrypoints=websecure"
- "traefik.http.routers.radarr.tls=true" - "traefik.http.routers.radarr.tls=true"
- "traefik.http.routers.radarr.tls.certresolver=letsencrypt" - "traefik.http.routers.radarr.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "poll"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: SECRET_PASSWORD - env_var: SECRET_PASSWORD
label: "Titkosítási kulcs" label: "Titkosítási kulcs"
type: secret type: secret
+3 -3
View File
@@ -1,5 +1,5 @@
# Rallly - Időpont szavazás (Doodle alternatíva) # Rallly - Időpont szavazás (Doodle alternatíva)
# Domain: poll.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: postgres # Database: postgres
# RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes # RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes
# #
@@ -20,7 +20,7 @@ services:
- TZ=Europe/Budapest - TZ=Europe/Budapest
- DATABASE_URL=postgresql://rallly:${DB_PASSWORD}@rallly-postgres:5432/rallly - DATABASE_URL=postgresql://rallly:${DB_PASSWORD}@rallly-postgres:5432/rallly
- SECRET_PASSWORD=${SECRET_PASSWORD} - SECRET_PASSWORD=${SECRET_PASSWORD}
- NEXT_PUBLIC_BASE_URL=https://poll.${DOMAIN} - NEXT_PUBLIC_BASE_URL=https://${SUBDOMAIN}.${DOMAIN}
networks: networks:
- traefik-public - traefik-public
- rallly-internal - rallly-internal
@@ -36,7 +36,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.rallly.rule=Host(`poll.${DOMAIN}`)" - "traefik.http.routers.rallly.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.rallly.entrypoints=websecure" - "traefik.http.routers.rallly.entrypoints=websecure"
- "traefik.http.routers.rallly.tls=true" - "traefik.http.routers.rallly.tls=true"
- "traefik.http.routers.rallly.tls.certresolver=letsencrypt" - "traefik.http.routers.rallly.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "arcade"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: DB_PASSWORD - env_var: DB_PASSWORD
label: "Adatbázis jelszó" label: "Adatbázis jelszó"
type: secret type: secret
+2 -2
View File
@@ -1,5 +1,5 @@
# ROMM - ROM Manager for Game Libraries # ROMM - ROM Manager for Game Libraries
# Domain: arcade.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: MariaDB + Redis # Database: MariaDB + Redis
# RAM: ~300MB (mem_limit: 1024M total — romm 512M + mariadb 384M + redis 128M) | Pi-compatible: No (MariaDB + heavy) # RAM: ~300MB (mem_limit: 1024M total — romm 512M + mariadb 384M + redis 128M) | Pi-compatible: No (MariaDB + heavy)
# #
@@ -80,7 +80,7 @@ services:
start_period: 60s start_period: 60s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.romm.rule=Host(`arcade.${DOMAIN}`)" - "traefik.http.routers.romm.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.romm.entrypoints=websecure" - "traefik.http.routers.romm.entrypoints=websecure"
- "traefik.http.routers.romm.tls=true" - "traefik.http.routers.romm.tls=true"
- "traefik.http.routers.romm.tls.certresolver=letsencrypt" - "traefik.http.routers.romm.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "requests"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Film és sorozat igénylő a háztartás tagjai számára" tagline: "Film és sorozat igénylő a háztartás tagjai számára"
+2 -2
View File
@@ -1,5 +1,5 @@
# Jellyseerr - Média igénylés kezelő Jellyfin/Plex integrációval # Jellyseerr - Média igénylés kezelő Jellyfin/Plex integrációval
# Domain: requests.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes # RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes
# #
@@ -29,7 +29,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.seerr.rule=Host(`requests.${DOMAIN}`)" - "traefik.http.routers.seerr.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.seerr.entrypoints=websecure" - "traefik.http.routers.seerr.entrypoints=websecure"
- "traefik.http.routers.seerr.tls=true" - "traefik.http.routers.seerr.tls=true"
- "traefik.http.routers.seerr.tls.certresolver=letsencrypt" - "traefik.http.routers.seerr.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "sonarr"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: HDD_PATH - env_var: HDD_PATH
label: "Médiatár útvonal" label: "Médiatár útvonal"
type: path type: path
+2 -2
View File
@@ -1,5 +1,5 @@
# Sonarr - Automatikus sorozat letöltő és rendszerező # Sonarr - Automatikus sorozat letöltő és rendszerező
# Domain: sonarr.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~150M (mem_limit: 512M) | Pi-compatible: Yes # RAM: ~150M (mem_limit: 512M) | Pi-compatible: Yes
# #
@@ -34,7 +34,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.sonarr.rule=Host(`sonarr.${DOMAIN}`)" - "traefik.http.routers.sonarr.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.sonarr.entrypoints=websecure" - "traefik.http.routers.sonarr.entrypoints=websecure"
- "traefik.http.routers.sonarr.tls=true" - "traefik.http.routers.sonarr.tls=true"
- "traefik.http.routers.sonarr.tls.certresolver=letsencrypt" - "traefik.http.routers.sonarr.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "recipes"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: SECRET_KEY - env_var: SECRET_KEY
label: "Titkosítási kulcs" label: "Titkosítási kulcs"
type: secret type: secret
+2 -2
View File
@@ -1,5 +1,5 @@
# Tandoor Recipes - Receptkezelő és étkezés tervező # Tandoor Recipes - Receptkezelő és étkezés tervező
# Domain: recipes.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: postgres # Database: postgres
# RAM: ~150M (mem_limit: 512M) | Pi-compatible: Yes # RAM: ~150M (mem_limit: 512M) | Pi-compatible: Yes
# #
@@ -43,7 +43,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.tandoor.rule=Host(`recipes.${DOMAIN}`)" - "traefik.http.routers.tandoor.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.tandoor.entrypoints=websecure" - "traefik.http.routers.tandoor.entrypoints=websecure"
- "traefik.http.routers.tandoor.tls=true" - "traefik.http.routers.tandoor.tls=true"
- "traefik.http.routers.tandoor.tls.certresolver=letsencrypt" - "traefik.http.routers.tandoor.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "terminal"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Webes SSH terminál - szerver hozzáférés a böngészőből" tagline: "Webes SSH terminál - szerver hozzáférés a böngészőből"
+2 -2
View File
@@ -1,5 +1,5 @@
# Termix - Webes SSH és szerver menedzser # Termix - Webes SSH és szerver menedzser
# Domain: terminal.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~30M (mem_limit: 128M) | Pi-compatible: Yes # RAM: ~30M (mem_limit: 128M) | Pi-compatible: Yes
# #
@@ -30,7 +30,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.termix.rule=Host(`terminal.${DOMAIN}`)" - "traefik.http.routers.termix.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.termix.entrypoints=websecure" - "traefik.http.routers.termix.entrypoints=websecure"
- "traefik.http.routers.termix.tls=true" - "traefik.http.routers.termix.tls=true"
- "traefik.http.routers.termix.tls.certresolver=letsencrypt" - "traefik.http.routers.termix.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "status"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Szolgáltatás monitoring - értesítés ha valami nem működik" tagline: "Szolgáltatás monitoring - értesítés ha valami nem működik"
+2 -2
View File
@@ -1,5 +1,5 @@
# Uptime Kuma - Szolgáltatás és weboldal monitoring # Uptime Kuma - Szolgáltatás és weboldal monitoring
# Domain: status.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes # RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes
# #
@@ -29,7 +29,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.uptime-kuma.rule=Host(`status.${DOMAIN}`)" - "traefik.http.routers.uptime-kuma.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.uptime-kuma.entrypoints=websecure" - "traefik.http.routers.uptime-kuma.entrypoints=websecure"
- "traefik.http.routers.uptime-kuma.tls=true" - "traefik.http.routers.uptime-kuma.tls=true"
- "traefik.http.routers.uptime-kuma.tls.certresolver=letsencrypt" - "traefik.http.routers.uptime-kuma.tls.certresolver=letsencrypt"
+8
View File
@@ -29,6 +29,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "vault"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: ADMIN_TOKEN - env_var: ADMIN_TOKEN
label: "Admin panel token" label: "Admin panel token"
type: secret type: secret
+6 -6
View File
@@ -1,5 +1,5 @@
# Vaultwarden - Password Manager (Bitwarden-compatible) # Vaultwarden - Password Manager (Bitwarden-compatible)
# Domain: vault.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (SQLite, built-in) # Database: None (SQLite, built-in)
# RAM: ~50MB (mem_limit: 256M) | Pi-compatible: Yes # RAM: ~50MB (mem_limit: 256M) | Pi-compatible: Yes
# #
@@ -9,13 +9,13 @@
# SIGNUPS_ALLOWED - Set to "false" after creating your account(s) # SIGNUPS_ALLOWED - Set to "false" after creating your account(s)
# #
# First-time setup: # First-time setup:
# 1. Visit https://vault.${DOMAIN} and create an account # 1. Visit https://${SUBDOMAIN}.${DOMAIN} and create an account
# 2. Set SIGNUPS_ALLOWED=false via the controller # 2. Set SIGNUPS_ALLOWED=false via the controller
# 3. Admin panel at https://vault.${DOMAIN}/admin (if ADMIN_TOKEN set) # 3. Admin panel at https://${SUBDOMAIN}.${DOMAIN}/admin (if ADMIN_TOKEN set)
# #
# Clients: # Clients:
# Use any Bitwarden client (desktop, mobile, browser extension) # Use any Bitwarden client (desktop, mobile, browser extension)
# Set server URL to: https://vault.${DOMAIN} # Set server URL to: https://${SUBDOMAIN}.${DOMAIN}
services: services:
vaultwarden: vaultwarden:
@@ -23,7 +23,7 @@ services:
container_name: vaultwarden container_name: vaultwarden
restart: unless-stopped restart: unless-stopped
environment: environment:
- DOMAIN=https://vault.${DOMAIN} - DOMAIN=https://${SUBDOMAIN}.${DOMAIN}
- SIGNUPS_ALLOWED=${SIGNUPS_ALLOWED:-true} - SIGNUPS_ALLOWED=${SIGNUPS_ALLOWED:-true}
- ADMIN_TOKEN=${ADMIN_TOKEN:-} - ADMIN_TOKEN=${ADMIN_TOKEN:-}
- WEBSOCKET_ENABLED=true - WEBSOCKET_ENABLED=true
@@ -44,7 +44,7 @@ services:
start_period: 10s start_period: 10s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.vaultwarden.rule=Host(`vault.${DOMAIN}`)" - "traefik.http.routers.vaultwarden.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.vaultwarden.entrypoints=websecure" - "traefik.http.routers.vaultwarden.entrypoints=websecure"
- "traefik.http.routers.vaultwarden.tls=true" - "traefik.http.routers.vaultwarden.tls=true"
- "traefik.http.routers.vaultwarden.tls.certresolver=letsencrypt" - "traefik.http.routers.vaultwarden.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "tasks"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: VIKUNJA_SERVICE_JWTSECRET - env_var: VIKUNJA_SERVICE_JWTSECRET
label: "JWT titkosítási kulcs" label: "JWT titkosítási kulcs"
type: secret type: secret
+3 -3
View File
@@ -1,5 +1,5 @@
# Vikunja - Feladatkezelő listák és táblák (Todoist/Trello alternatíva) # Vikunja - Feladatkezelő listák és táblák (Todoist/Trello alternatíva)
# Domain: tasks.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes # RAM: ~50M (mem_limit: 256M) | Pi-compatible: Yes
# #
@@ -14,7 +14,7 @@ services:
restart: unless-stopped restart: unless-stopped
environment: environment:
- TZ=Europe/Budapest - TZ=Europe/Budapest
- VIKUNJA_SERVICE_PUBLICURL=https://tasks.${DOMAIN} - VIKUNJA_SERVICE_PUBLICURL=https://${SUBDOMAIN}.${DOMAIN}
- VIKUNJA_SERVICE_JWTSECRET=${VIKUNJA_SERVICE_JWTSECRET} - VIKUNJA_SERVICE_JWTSECRET=${VIKUNJA_SERVICE_JWTSECRET}
volumes: volumes:
- vikunja_data:/app/vikunja/files - vikunja_data:/app/vikunja/files
@@ -33,7 +33,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.vikunja.rule=Host(`tasks.${DOMAIN}`)" - "traefik.http.routers.vikunja.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.vikunja.entrypoints=websecure" - "traefik.http.routers.vikunja.entrypoints=websecure"
- "traefik.http.routers.vikunja.tls=true" - "traefik.http.routers.vikunja.tls=true"
- "traefik.http.routers.vikunja.tls.certresolver=letsencrypt" - "traefik.http.routers.vikunja.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "hike"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: MEILI_MASTER_KEY - env_var: MEILI_MASTER_KEY
label: "Keresőmotor kulcs" label: "Keresőmotor kulcs"
type: secret type: secret
+3 -3
View File
@@ -1,5 +1,5 @@
# Wanderer - Túra tervező és nyomkövetéssel # Wanderer - Túra tervező és nyomkövetéssel
# Domain: hike.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes # RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes
# #
@@ -19,7 +19,7 @@ services:
- TZ=Europe/Budapest - TZ=Europe/Budapest
- MEILI_URL=http://wanderer-search:7700 - MEILI_URL=http://wanderer-search:7700
- MEILI_MASTER_KEY=${MEILI_MASTER_KEY} - MEILI_MASTER_KEY=${MEILI_MASTER_KEY}
- ORIGIN=https://hike.${DOMAIN} - ORIGIN=https://${SUBDOMAIN}.${DOMAIN}
volumes: volumes:
- wanderer_data:/app/pb_data - wanderer_data:/app/pb_data
networks: networks:
@@ -37,7 +37,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.wanderer.rule=Host(`hike.${DOMAIN}`)" - "traefik.http.routers.wanderer.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.wanderer.entrypoints=websecure" - "traefik.http.routers.wanderer.entrypoints=websecure"
- "traefik.http.routers.wanderer.tls=true" - "traefik.http.routers.wanderer.tls=true"
- "traefik.http.routers.wanderer.tls.certresolver=letsencrypt" - "traefik.http.routers.wanderer.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "fitness"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
- env_var: SECRET_KEY - env_var: SECRET_KEY
label: "Titkosítási kulcs" label: "Titkosítási kulcs"
type: secret type: secret
+3 -3
View File
@@ -1,5 +1,5 @@
# wger - Edzésnapló és fitnesz tervező # wger - Edzésnapló és fitnesz tervező
# Domain: fitness.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes # RAM: ~100M (mem_limit: 384M) | Pi-compatible: Yes
# #
@@ -16,7 +16,7 @@ services:
- TZ=Europe/Budapest - TZ=Europe/Budapest
- SECRET_KEY=${SECRET_KEY} - SECRET_KEY=${SECRET_KEY}
- DJANGO_DB_ENGINE=django.db.backends.sqlite3 - DJANGO_DB_ENGINE=django.db.backends.sqlite3
- SITE_URL=https://fitness.${DOMAIN} - SITE_URL=https://${SUBDOMAIN}.${DOMAIN}
volumes: volumes:
- wger_data:/home/wger/db - wger_data:/home/wger/db
- wger_media:/home/wger/media - wger_media:/home/wger/media
@@ -34,7 +34,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.wger.rule=Host(`fitness.${DOMAIN}`)" - "traefik.http.routers.wger.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.wger.entrypoints=websecure" - "traefik.http.routers.wger.entrypoints=websecure"
- "traefik.http.routers.wger.tls=true" - "traefik.http.routers.wger.tls=true"
- "traefik.http.routers.wger.tls.certresolver=letsencrypt" - "traefik.http.routers.wger.tls.certresolver=letsencrypt"
+8
View File
@@ -24,6 +24,14 @@ deploy_fields:
description: "A szerver domain neve" description: "A szerver domain neve"
locked_after_deploy: true locked_after_deploy: true
- env_var: SUBDOMAIN
label: "Aldomain"
type: subdomain
default: "wishes"
required: true
locked_after_deploy: true
description: "Az alkalmazás aldomainje"
# --- App info (info page content) --- # --- App info (info page content) ---
app_info: app_info:
tagline: "Családi kívánságlista - karácsonyra, születésnapokra" tagline: "Családi kívánságlista - karácsonyra, születésnapokra"
+2 -2
View File
@@ -1,5 +1,5 @@
# Wishlist - Családi kívánságlista megosztás # Wishlist - Családi kívánságlista megosztás
# Domain: wishes.${DOMAIN} # Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based) # Database: None (file-based)
# RAM: ~30M (mem_limit: 128M) | Pi-compatible: Yes # RAM: ~30M (mem_limit: 128M) | Pi-compatible: Yes
# #
@@ -29,7 +29,7 @@ services:
start_period: 30s start_period: 30s
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.wishlist.rule=Host(`wishes.${DOMAIN}`)" - "traefik.http.routers.wishlist.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.wishlist.entrypoints=websecure" - "traefik.http.routers.wishlist.entrypoints=websecure"
- "traefik.http.routers.wishlist.tls=true" - "traefik.http.routers.wishlist.tls=true"
- "traefik.http.routers.wishlist.tls.certresolver=letsencrypt" - "traefik.http.routers.wishlist.tls.certresolver=letsencrypt"

Some files were not shown because too many files have changed in this diff Show More