Clone
1
Compose Runtime.de
Patrick Gniza edited this page 2026-08-17 10:48:39 +02:00

Deutsch | English

Compose-Runtime

Die Runtime-Compose-Konfiguration ist in eine gemeinsame Basisdatei und Backend-spezifische Override-Dateien aufgeteilt.


Dateien

.env.sample
docker-compose.yml
docker-compose.mssql.yml
docker-compose.firebird.yml
scripts/build-local.sh
scripts/build-local.ps1

docker-compose.build.yml wird für die lokale Entwicklung nicht mehr benötigt. Lokale Image-Builds werden über scripts/build-local.* ausgeführt.


Backend-Auswahl

Das ausgewählte Backend wird in .env gesteuert.

Microsoft SQL Server

DATABASE_BACKEND=mssql
COMPOSE_PATH_SEPARATOR=:
COMPOSE_FILE=docker-compose.yml:docker-compose.${DATABASE_BACKEND}.yml

Firebird

DATABASE_BACKEND=firebird
COMPOSE_PATH_SEPARATOR=:
COMPOSE_FILE=docker-compose.yml:docker-compose.${DATABASE_BACKEND}.yml

In nativen Windows-Shells muss als Trennzeichen der Compose-Dateien möglicherweise ; statt : verwendet werden:

COMPOSE_PATH_SEPARATOR=;
COMPOSE_FILE=docker-compose.yml;docker-compose.${DATABASE_BACKEND}.yml

Danach kann der Stack immer gestartet werden mit:

docker compose up -d

Effektive Konfiguration anzeigen:

docker compose config

Basis-Runtime-Dienste

Die Basis-Compose-Datei enthält die gemeinsam verwendeten Dienste:

romexis
romexis-admin
romexis-app
proxy

Backend-spezifische Dateien ergänzen oder überschreiben Datenbankdienste und datenbankbezogene Umgebungsvariablen.


MSSQL-Override

Das MSSQL-Override stellt üblicherweise bereit:

mssql
romexis-migration

Es konfiguriert außerdem den Romexis-Server für das MSSQL-Backend, beispielsweise:

SERVER_DB=5
MSSQL_HOST=mssql
ROMEXIS_DB_NAME=Romexis_db

Firebird-Override

Das Firebird-Override stellt üblicherweise bereit:

firebird

Es konfiguriert den Romexis-Server für das Firebird-Backend, beispielsweise:

SERVER_DB=4
FIREBIRD_HOST=firebird
ROMEXIS_DB_USER=sysdba

Image-Tags und Branch-Suffixe

Die Runtime-Compose-Dateien verwenden Multi-Architektur-Manifest-Tags:

${REGISTRY}/${ROMEXIS_IMAGE}:${ROMEXIS_VERSION}${IMAGE_SUFFIX}
${REGISTRY}/${MIGRATION_IMAGE}:latest${IMAGE_SUFFIX}
${REGISTRY}/${ADMINISTRATION_IMAGE}:latest${IMAGE_SUFFIX}
${REGISTRY}/${MROMEXIS_WEBAPP_IMAGE}:${ROMEXIS_VERSION}${IMAGE_SUFFIX}

Für main bleibt IMAGE_SUFFIX leer:

IMAGE_SUFFIX=

Für Feature-Branches:

IMAGE_SUFFIX=-feature-romexis-admin

Dadurch wird verhindert, dass Images aus Feature-Branches die von main verwendeten Runtime-Images überschreiben.


Häufige Befehle

Stack mit ausgewähltem Backend starten:

docker compose up -d

Dienste nach Image-Aktualisierungen neu erstellen:

docker compose up -d --force-recreate

Logs anzeigen:

docker compose logs -f

Einen einzelnen Dienst anzeigen:

docker compose logs -f romexis
docker compose logs -f romexis-admin
docker compose logs -f romexis-app

Stack stoppen:

docker compose down

Volumes nur entfernen, wenn persistente Testdaten gelöscht werden dürfen:

docker compose down -v