# INSIGHT MVP - Zugangsdaten & Server-Zugriff > **Dieses Dokument wird laufend aktualisiert und enthaelt alle relevanten > Zugangsinformationen fuer das Projekt.** --- ## 1. Git Repository | Parameter | Wert | |------------------|-----------------------------------------------------| | Git-Server | Forgejo (self-hosted) | | URL | `git.xinion.lan` | | Repository (SSH) | `ssh://git@git.xinion.lan/gitadmin/INSIGHT-MVP.git` | | Repository (HTTP)| `https://git.xinion.lan/gitadmin/INSIGHT-MVP` | | Organisation | `gitadmin` | | Zugriff | SSH Key-basiert | | CI/CD | Forgejo Actions (GitHub Actions kompatibel) | | Container Registry | `git.xinion.lan` (Forgejo built-in) | --- ## 2. SSH Deployment Key Der Deployment Key liegt im Repository unter `.keys/`: | Datei | Beschreibung | |------------------------------|-----------------------| | `.keys/deploy_ed25519` | Private Key (Ed25519) | | `.keys/deploy_ed25519.pub` | Public Key | ### Public Key (zur Hinterlegung auf Servern) ``` ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMuTpqzLyjqTIDMJ4bwEE4o2JeHH3imL+NeipeuBfiTo insight-deploy@xinion.lan ``` ### SSH-Verbindung zum Server ```bash # Verbindung zum Entwicklungsserver: ssh -i .keys/deploy_ed25519 deploy@ # Mit SSH-Config (empfohlen): # Eintrag in ~/.ssh/config: Host insight-dev HostName User deploy IdentityFile ~/git.xinion.lan/INSIGHT-MVP/.keys/deploy_ed25519 StrictHostKeyChecking accept-new ``` ### Wo der Public Key hinterlegt werden muss 1. **Entwicklungsserver (VM)**: `/home/deploy/.ssh/authorized_keys` 2. **Forgejo**: Repository Settings > Deploy Keys (fuer CI/CD) --- ## 3. Entwicklungsserver (ProxmoxVE VM) | Parameter | Wert | |------------------|-----------------------------------------| | **Hostname** | `insight-dev-01` | | **OS** | Ubuntu 24.04 LTS | | **IP** | _wird bei VM-Erstellung vergeben_ | | **SSH-Port** | 22 | | **SSH-User** | `deploy` | | **SSH-Key** | `.keys/deploy_ed25519` | | **Docker** | Docker Engine + Compose Plugin | | **Projekt-Pfad** | `/home/deploy/insight/` | ### Schnellzugriff nach VM-Setup ```bash # SSH auf den Server ssh -i .keys/deploy_ed25519 deploy@ # Status aller Container pruefen docker compose ps # Logs eines Services docker compose logs -f core # Neustart aller Services docker compose restart # Nur Backend neustarten docker compose restart core ``` --- ## 4. Service-Ports (auf der VM) | Service | Interner Port | Externer Port | URL | |-----------------|---------------|---------------|----------------------------------| | Traefik (HTTP) | 80 | 80 | http://insight-dev.xinion.lan | | Traefik (HTTPS) | 443 | 443 | https://insight-dev.xinion.lan | | Traefik Dashboard | 8080 | - | Nur intern | | Core-Service | 3000 | - | Via Traefik: /api/v1/* | | Frontend | 8080 | - | Via Traefik: /* | | PostgreSQL | 5432 | - | Nur intern (Docker-Netzwerk) | | PgBouncer | 6432 | - | Nur intern (Docker-Netzwerk) | | Redis | 6379 | - | Nur intern (Docker-Netzwerk) | | step-ca | 9000 | - | Nur intern (Docker-Netzwerk) | ### Observability (nur intern, kein oeffentlicher Zugriff) | Service | Port | Zugriff | |-----------------|-------|----------------------------------| | Grafana | 3001 | SSH-Tunnel: `ssh -L 3001:localhost:3001 deploy@` | | Prometheus | 9090 | Nur intern | | Loki | 3100 | Nur intern | | Tempo | 3200 | Nur intern | --- ## 5. Datenbank-Zugangsdaten > **Echte Passwoerter stehen in der `.env`-Datei auf dem Server. > Niemals in Git committen!** | Parameter | Wert (Platzhalter) | |-------------------|---------------------------------| | DB-Host | `pgbouncer` (via Docker-Netzwerk) | | DB-Port | `6432` | | Core-DB-Name | `platform_core` | | Tenant-DB-Schema | `tenant_{slug}` | | DB-User | Siehe `.env` -> `DB_USER` | | DB-Passwort | Siehe `.env` -> `DB_PASSWORD` | --- ## 6. Container Registry | Parameter | Wert | |------------------|-----------------------------------------------------| | Registry-URL | `git.xinion.lan` | | Image-Prefix | `git.xinion.lan/gitadmin/insight-{service}` | | Authentifizierung| Forgejo Login-Credentials | ### Image-Namen ``` git.xinion.lan/gitadmin/insight-core:latest git.xinion.lan/gitadmin/insight-core:develop git.xinion.lan/gitadmin/insight-core:v0.1.0 git.xinion.lan/gitadmin/insight-frontend:latest ``` --- ## 7. Deployment-Pfad ``` MacBook (Entwicklung) | | git push v Forgejo (git.xinion.lan) | | Forgejo Actions CI/CD | - Lint, Type-Check, Tests, Build | - Docker Image bauen & pushen v Server (insight-dev-01) | | docker compose pull && docker compose up -d v Laufende Anwendung ``` --- ## 8. Wichtige Befehle ### Vom MacBook aus ```bash # Code pushen git push origin develop # SSH auf Server ssh -i .keys/deploy_ed25519 deploy@ # Grafana oeffnen (SSH-Tunnel) ssh -L 3001:localhost:3001 -i .keys/deploy_ed25519 deploy@ # Dann im Browser: http://localhost:3001 ``` ### Auf dem Server ```bash # Alle Services starten docker compose up -d # Mit Observability docker compose -f docker-compose.yml -f docker-compose.observability.yml up -d # Health-Check curl http://localhost:3000/health # Datenbank-Migration docker compose exec core npx prisma migrate deploy # Logs folgen docker compose logs -f --tail=100 ```