Clone
3
Base Image.de
Patrick Gniza edited this page 2026-08-22 15:46:50 +02:00

Deutsch | English

Runtime-Basis-Images

Die Build-Architektur verwendet getrennte wiederverwendbare Runtime-Images für Server sowie grafische Admin-/Client-Workloads. Dadurch bleiben aufwendige architekturspezifische Abhängigkeiten aus den versionsspezifischen finalen Images heraus.

Verzeichnisse:

romexis-base/
romexis-gui-runtime/
romexis-common/

Verantwortlichkeiten der Server-Runtime

romexis-base-jre stellt Folgendes bereit:

  • Java-11-Laufzeit
  • JavaFX-/OpenJFX-Unterstützung
  • Microsoft-SQL-Server-Kommandozeilenwerkzeuge
  • Firebird-Clientbibliotheken und -Werkzeuge
  • gemeinsame Betriebssystempakete
  • native Chilkat-Bibliothek und JAR
  • RomexisPropertyAgent.jar mit eingebetteten RxCr2- und OptionPane-Transformern
  • Sicherheitsaktualisierungen

Die aufwendigen Native-/Java-Artefakte werden dadurch einmal pro Architektur statt einmal pro Romexis-Version gebaut.


Verantwortlichkeiten der GUI-Runtime

romexis-gui-runtime wird gemeinsam von romexis-admin und romexis-client verwendet. Sie stellt bereit:

  • Java 17 und OpenJFX
  • Xvfb, Openbox und xcompmgr
  • x11vnc und noVNC/websockify
  • GTK-/Mesa-/OpenGL-Abhängigkeiten
  • Chilkat und RomexisPropertyAgent.jar einschließlich Java-17-Swing-Lifecycle-Null-Guard
  • die aus romexis-common/dxservice_dummy.c gebaute DxService-Kompatibilitätsbibliothek

Admin und Client installieren bzw. kompilieren diese Abhängigkeiten daher nicht erneut für jede Romexis-Version.

Das Agent-JAR enthält ASM und RomexisOptionPaneUIPatch.class; in den finalen Containern ist kein separates ASM-Artefakt erforderlich. Der Patch transformiert nur die betroffene In-Memory-Listenerklasse und schreibt das proprietäre Romexis-JAR auf dem Datenträger nicht um.


Architekturspezifische Tags

romexis-base-jre:11-amd64
romexis-base-jre:11-arm64
romexis-base-jre:11

romexis-gui-runtime:1-amd64
romexis-gui-runtime:1-arm64
romexis-gui-runtime:1

Die Runtime-Images sind architekturspezifisch, weil sie native Laufzeitpakete enthalten. Die Tags ohne Architektur-Suffix sind Multi-Architektur-Manifeste, die erst nach erfolgreichen Builds beider Architekturen veröffentlicht werden.


Firebird-Werkzeuge

Für die Firebird-Initialisierung benötigt der Romexis-Container die Firebird-CLI-Werkzeuge.

Das wichtige Werkzeug ist üblicherweise:

isql-fb

nicht:

isql

Unter Debian/Ubuntu kann isql auf unixODBC verweisen. Das Firebird-Initialisierungsskript sollte daher standardmäßig Folgendes verwenden:

ISQL="${ISQL:-isql-fb}"

Typischerweise erforderliche Pakete:

firebird3.0-utils
libfbclient2

Paketnamen können sich abhängig von der Basisdistribution unterscheiden.


SQL-Server-Werkzeuge

Das MSSQL-Initialisierungsskript verwendet:

/opt/mssql-tools18/bin/sqlcmd

Dies wird benötigt für:

  • das Warten auf SQL Server
  • das Erstellen der Datenbank
  • das Erstellen des Romexis-Datenbankbenutzers
  • den Import von SQL-Skripten
  • die Aktualisierung der Romexis-Datenpfade