From cc2af04d703afdd9d62f2da72e14b3a628785ec5 Mon Sep 17 00:00:00 2001 From: Fabian Wolter Date: Sun, 14 Jun 2026 05:13:28 +0000 Subject: [PATCH] Document PostgreSQL server environment setup --- .../014-postgresql-anbindung-server-env.md | 99 +++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 install-notes/014-postgresql-anbindung-server-env.md diff --git a/install-notes/014-postgresql-anbindung-server-env.md b/install-notes/014-postgresql-anbindung-server-env.md new file mode 100644 index 0000000..0ee30b2 --- /dev/null +++ b/install-notes/014-postgresql-anbindung-server-env.md @@ -0,0 +1,99 @@ +# 014 - PostgreSQL-Anbindung und server.env + +## Ziel + +Der RUVNOX Tactical Server wurde an die externe PostgreSQL-Instanz auf CT101 angebunden. + +## Umgebung + +- Tactical Server Container: RUVNOX-TACTICAL +- Tactical Server IP: 192.168.178.105 +- PostgreSQL Container: CT101 / PostgreSQL +- PostgreSQL IP: 192.168.178.4 +- PostgreSQL Version: 17.10 +- Datenbank: ruvnox_tactical +- Datenbank-User: ruvnox_tactical + +## PostgreSQL-Netzwerkfreigabe + +Auf CT101 wurde in der PostgreSQL pg_hba.conf der Tactical-Container explizit freigegeben. + +Datei: + +/etc/postgresql/17/main/pg_hba.conf + +Eintrag: + +host ruvnox_tactical ruvnox_tactical 192.168.178.105/32 scram-sha-256 + +Danach wurde PostgreSQL neu geladen: + +systemctl reload postgresql + +## Server-Konfiguration + +Die echte Runtime-Konfiguration liegt außerhalb des Git-Repositories: + +/opt/ruvnox/tactical/config/server.env + +Diese Datei enthält die produktiven Umgebungsvariablen: + +RUVNOX_ENV=development +SERVER_HOST=0.0.0.0 +SERVER_PORT=8080 +DB_HOST=192.168.178.4 +DB_PORT=5432 +DB_NAME=ruvnox_tactical +DB_USER=ruvnox_tactical +DB_PASSWORD= + +Die Datei darf nicht ins Git übernommen werden. + +Rechte: + +Owner: ruvnox:ruvnox +Modus: 600 + +## Beispiel-Konfiguration + +Im tactical-server Repository wurde nur die Beispiel-Datei versioniert: + +.env.example + +Diese enthält Platzhalterwerte und keine echten Secrets. + +## systemd EnvironmentFile + +Der systemd-Dienst lädt die echte Konfigurationsdatei über: + +EnvironmentFile=/opt/ruvnox/tactical/config/server.env + +Zusätzlich wurde JAVA_OPTS korrekt gequotet: + +Environment="JAVA_OPTS=-Xms256m -Xmx1024m" + +## API-Status + +Der Endpunkt /api/v1/status prüft jetzt zusätzlich die PostgreSQL-Verbindung. + +Beispielantwort: + +{"service":"ruvnox-tactical-server","status":"online","version":"0.1.0-SNAPSHOT","database":{"status":"online","host":"192.168.178.4","port":5432,"name":"ruvnox_tactical"}} + +## Verifikation lokal + +curl -fsS http://127.0.0.1:8080/api/v1/status + +## Verifikation öffentlich + +curl -fsS https://tactical.ruvnox.de/api/v1/status + +## Git-Commits + +tactical-server: + +03b2df3 Add PostgreSQL status check + +tactical-deploy: + +4f57623 Load server environment file in systemd service