- Dockerfile/compose: Flask-App + selenium/standalone-chrome (noVNC), Healthcheck - app.py: /healthz + eingebettete noVNC-Live-Ansicht (NOVNC_URL, lokal:7900 / Cluster:/novnc/) - Helm-Chart infra/k8s/base/ibo: App + Selenium-Sidecar, 2 Ports, Ingress (/ + /novnc via stripPrefix), SSO-Middlewares aus dem CD-Repo - Gitea-CI: version -> test -> build-push -> helm-validate -> deploy-dev (Write-back) - .gitignore/.dockerignore (Dev-Samples raus) - infra/RUNBOOK-ibo.md: Zitadel/DNS/Deploy/Prod-Promote Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
42 lines
1.5 KiB
YAML
42 lines
1.5 KiB
YAML
# Immo-Bot lokal / auf einem VPS:
|
|
#
|
|
# docker compose up -d
|
|
#
|
|
# Danach:
|
|
# - Web-UI: http://localhost:5000
|
|
# - Live-Ansicht des Automations-Browsers: direkt in der Web-App (Button
|
|
# "👁️ Browser live ansehen" / oeffnet automatisch beim Consent-Browser).
|
|
# Die App bettet dazu noVNC (Port 7900) per iframe ein — NOVNC_URL unten.
|
|
# Alternativ direkt: http://localhost:7900 (Passwort: secret)
|
|
#
|
|
# Der Selenium-Container bringt Chrome + noVNC mit. Die App verbindet sich
|
|
# ueber SELENIUM_REMOTE_URL mit ihm (kein Chrome-Setup in der App noetig).
|
|
|
|
services:
|
|
selenium:
|
|
image: selenium/standalone-chrome:latest
|
|
shm_size: "2g"
|
|
environment:
|
|
# Parallelitaet: mehrere Browser-Sessions gleichzeitig zulassen.
|
|
# Sollte >= config.json run.parallel_workers sein.
|
|
SE_NODE_MAX_SESSIONS: "4"
|
|
SE_NODE_OVERRIDE_MAX_SESSIONS: "true"
|
|
ports:
|
|
- "4444:4444" # WebDriver (intern von der App genutzt)
|
|
- "7900:7900" # noVNC - Live-Ansicht (eingebettet in die Web-App)
|
|
restart: unless-stopped
|
|
|
|
app:
|
|
build: .
|
|
depends_on:
|
|
- selenium
|
|
environment:
|
|
# App spricht den Selenium-Container ueber den Service-Namen an
|
|
SELENIUM_REMOTE_URL: "http://selenium:4444"
|
|
# Basis-URL fuer das eingebettete noVNC-Live-View. Lokal zeigt der Browser
|
|
# auf den gemappten Host-Port 7900. (Im Cluster: /novnc/ ueber den Ingress.)
|
|
NOVNC_URL: "http://localhost:7900"
|
|
ports:
|
|
- "5000:5000" # Web-UI
|
|
restart: unless-stopped
|