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

Deutsch | English

Compose Runtime

The runtime Compose setup is split into a common base file and backend-specific override files.


Files

.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 is no longer required for local development. Local image builds are handled through scripts/build-local.*.


Backend Selection

The selected backend is controlled in .env.

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

On native Windows shells the Compose file separator may need to be ; instead of ::

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

After this, the stack can always be started with:

docker compose up -d

Inspect the effective configuration:

docker compose config

Base Runtime Services

The base Compose file contains the shared services:

romexis
romexis-admin
romexis-app
proxy

Backend-specific files add or override database services and database-related environment variables.


MSSQL Override

The MSSQL override typically provides:

mssql
romexis-migration

It also configures the Romexis server for the MSSQL backend, for example:

SERVER_DB=5
MSSQL_HOST=mssql
ROMEXIS_DB_NAME=Romexis_db

Firebird Override

The Firebird override typically provides:

firebird

It configures the Romexis server for the Firebird backend, for example:

SERVER_DB=4
FIREBIRD_HOST=firebird
ROMEXIS_DB_USER=sysdba

Image Tags and Branch Suffixes

The runtime Compose files use multi-architecture 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}

For main, IMAGE_SUFFIX stays empty:

IMAGE_SUFFIX=

For feature branches:

IMAGE_SUFFIX=-feature-romexis-admin

This prevents feature branch images from overwriting the runtime images used by main.


Common Commands

Start the selected backend stack:

docker compose up -d

Recreate services after image updates:

docker compose up -d --force-recreate

Show logs:

docker compose logs -f

Show a single service:

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

Stop the stack:

docker compose down

Remove volumes only when persistent test data may be deleted:

docker compose down -v