INSTALLATION
Reproduzierbare Installation der Engineering Platform#
Grundsatz#
Die Installation wird aus einer versionierten Installationsbeschreibung materialisiert. Manuelle Kopierfolgen sind nicht der führende Installationsweg.
1. Systemabhängigkeiten#
Für Debian/Ubuntu:
sudo apt update
sudo apt install mariadb-server mariadb-client python3 nodejs npm golang-go
sudo systemctl enable --now mariadb
Die konkrete Go-Mindestversion wird vom Bootstrap geprüft. Falls die Distribution eine ältere Go-Version liefert, muss eine passende Go-Installation bereitgestellt werden.
2. Lokale Installationsbeschreibung#
cd ~/engineering/engineering-tools
cp 10-bootstrap/config/engineering-installation.example.json \
10-bootstrap/config/engineering-installation.local.json
Die lokale Datei kann Pfade und Zugangsdaten anpassen und gehört nicht in ein Upload-Paket.
Verbindliche MVP-Ports:
- Test:
18082 - Produktion:
18083
MariaDB läuft als nativer Systemdienst.
3. Plan und Checks#
python3 10-bootstrap/engineering-bootstrap.py \
10-bootstrap/config/engineering-installation.local.json
Der Report zeigt:
- fehlende Repositories
- Go-/Node-/npm-/Python-/MariaDB-Verfügbarkeit
- MariaDB-Dienststatus
- Portbelegung
- Seed-Manifest
- geplante Runtime-Verzeichnisse und
.env-Dateien
4. Runtime materialisieren#
python3 10-bootstrap/engineering-bootstrap.py \
10-bootstrap/config/engineering-installation.local.json \
--apply
Der Installer erzeugt Test- und Produktionsstruktur sowie geschützte .env-Dateien mit Modus 0600. Vorhandene Dateien bleiben unverändert.
5. Datenbanken und Benutzer anlegen#
python3 10-bootstrap/engineering-bootstrap.py \
10-bootstrap/config/engineering-installation.local.json \
--apply \
--configure-database
Initial werden lokal angelegt:
engineering_platform_test/ Benutzerengineering_platform_testengineering_platform/ Benutzerengineering_platform
Das MVP-Startpasswort ist user und muss vor externer Erreichbarkeit ersetzt werden.
6. Nachvollziehbarkeit#
Der Bootstrap schreibt einen Markdown-Report unter:
~/engineering/runtime/test/reports/bootstrap/engineering-bootstrap-report.md
Damit bleibt sichtbar, welche Abhängigkeiten geprüft, welche Pfade materialisiert und welche Lücken erkannt wurden.