10 Commits
v1.0.4 ... main

Author SHA1 Message Date
Gitea Actions
beee7d89ea Release v1.0.10 2026-07-08 14:25:15 +00:00
Gitea Actions
7375dfac57 Release v1.0.8-r2 2026-06-23 11:13:07 +00:00
Gitea Actions
4d17637d5b Release v1.0.8 2026-06-23 11:02:14 +00:00
Gitea Actions
37f520638e Release v1.0.7-r2 2026-06-23 08:31:17 +00:00
Gitea Actions
cef9634960 Release v1.0.7 2026-06-23 07:58:39 +00:00
smueller
aebd208b07 Compose: license enforce is enforced by backend in production
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-23 09:56:18 +02:00
smueller
64b32d13ad License: only LICENSE_KEY in .env, enforce settings in compose
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-23 09:50:32 +02:00
Gitea Actions
f9c7eed90f Release v1.0.6 2026-06-23 07:42:59 +00:00
Gitea Actions
8751914e85 Release v1.0.5 2026-06-23 07:39:44 +00:00
smueller
3ec0b95496 Add .env.example (customer config template)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-23 09:37:32 +02:00
3 changed files with 55 additions and 10 deletions

51
.env.example Normal file
View File

@@ -0,0 +1,51 @@
# ==========================================
# Eikona AutoInstall
# ==========================================
# Registry-Login (vom Hersteller erhalten):
# echo "$REGISTRY_TOKEN" | docker login git.hexahost.dev -u KUNDE --password-stdin
# Image-Version
IMAGE_TAG=1.0.10
# --- Allgemein ---
APP_ENV=production
# --- PostgreSQL ---
POSTGRES_PASSWORD=CHANGE_ME
DATABASE_URL=postgresql+psycopg://eikona:CHANGE_ME@127.0.0.1:5432/eikona
WORKER_MAX_PARALLEL_DEPLOYMENTS=4
# --- Auth ---
AUTH_JWT_SECRET=CHANGE_ME_GENERATE_LONG_RANDOM_SECRET
AUTH_BOOTSTRAP_ADMIN_USERNAME=admin
AUTH_BOOTSTRAP_ADMIN_PASSWORD=CHANGE_ME
PROXMOX_DEFAULT_ROOT_PASSWORD=CHANGE_ME
# Erreichbare HTTPS-URL des Deployment-Servers (kein localhost!)
DEPLOY_SERVER_URL=https://192.168.1.100
# TLS-Zertifikate für die UI (Let's Encrypt oder eigene CA):
# /opt/docker/eikona/certs/fullchain.pem
# /opt/docker/eikona/certs/privkey.pem
# Ohne Zertifikate startet die UI im HTTP-Modus (nur für Tests).
# --- CORS (HTTPS-UI-URL anpassen) ---
CORS_ORIGINS=["https://192.168.1.100"]
# --- ISO ---
ISO_PVE_VERSION=9.2-1
ISO_PVE_DOWNLOAD_URL=
# --- Cleanup ---
CLEANUP_ENABLED=true
CLEANUP_INTERVAL_HOURS=24
CLEANUP_WORK_RETENTION_HOURS=24
CLEANUP_ARTIFACT_RETENTION_DAYS=7
CLEANUP_KEEP_LATEST_ARTIFACTS=2
CLEANUP_REMOVE_SOURCE_CACHE=false
# --- Lizenz Schlüssel ---
LICENSE_KEY=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

View File

@@ -1 +1 @@
1.0.4
1.0.10

View File

@@ -35,16 +35,8 @@ services:
CLEANUP_ARTIFACT_RETENTION_DAYS: ${CLEANUP_ARTIFACT_RETENTION_DAYS:-7}
CLEANUP_KEEP_LATEST_ARTIFACTS: ${CLEANUP_KEEP_LATEST_ARTIFACTS:-2}
CLEANUP_REMOVE_SOURCE_CACHE: ${CLEANUP_REMOVE_SOURCE_CACHE:-false}
LICENSE_ENFORCE: ${LICENSE_ENFORCE:-true}
# Lizenz: nur LICENSE_KEY vom Kunden; Rest ist Default im API-Image (config.py + Public Key)
LICENSE_KEY: ${LICENSE_KEY}
LICENSEGATE_API_URL: ${LICENSEGATE_API_URL:-https://license-api.hexaho.st}
LICENSEGATE_USER_ID: ${LICENSEGATE_USER_ID:-1}
LICENSE_SCOPE: ${LICENSE_SCOPE:-eikona-install}
LICENSE_USE_CHALLENGE: ${LICENSE_USE_CHALLENGE:-true}
LICENSE_PUBLIC_KEY: ${LICENSE_PUBLIC_KEY:-}
LICENSE_PUBLIC_KEY_PATH: ${LICENSE_PUBLIC_KEY_PATH:-}
LICENSE_CACHE_PATH: ${LICENSE_CACHE_PATH:-/data/license/verification-cache.json}
LICENSE_CACHE_GRACE_HOURS: ${LICENSE_CACHE_GRACE_HOURS:-72}
volumes:
- /opt/docker/eikona/isos:/data/isos
- /opt/docker/eikona/ssh:/data/ssh:ro
@@ -112,6 +104,8 @@ services:
image: git.hexahost.dev/smueller/eikona-autoinstall-dist/ui:${IMAGE_TAG:-latest}
container_name: eikona_ui_prod
network_mode: host
volumes:
- /opt/docker/eikona/certs:/etc/nginx/certs:ro
depends_on:
api:
condition: service_started