Build System hinzugefügt

2026-06-28 19:44:51 +00:00
parent 362c2b1448
commit e0623158c1
+125
@@ -0,0 +1,125 @@
# Build System
The build system is split into independent layers.
```text
romexis-payload
|
v
romexis-server
^
|
romexis-base-jre
romexis-firebird-payload
|
v
romexis-server
```
---
## Build Components
### Payload build
The payload build extracts the official Romexis installer.
It produces:
```text
/opt/romexis
/opt/romexis-mssql-db
/opt/romexis/version
```
### Firebird payload build
The Firebird payload build extracts the macOS installer database package.
It produces:
```text
/opt/romexis-firebird-db
/opt/romexis-firebird-db/scripts
/opt/romexis-firebird-db/tools
/opt/romexis-firebird-db/templates
```
### Base image build
The base image provides reusable runtime dependencies:
- Java 11
- JavaFX/OpenJFX
- SQL Server tools
- Firebird client libraries and tools
- OS dependencies
### Server image build
The final server image imports:
- `/opt/romexis` from `romexis-payload`
- `/opt/romexis-mssql-db` from `romexis-payload`
- `/opt/romexis-firebird-db` from `romexis-firebird-payload`
- base runtime from `romexis-base-jre`
- Chilkat native library
- Java property agent
- runtime helper scripts
---
## Local Build Commands
Build payload:
```bash
docker build --build-arg ROMEXIS_VERSION=6.5.3.444.203 -t gitea.buchhorster.de/patrick/romexis-payload:6.5.3.444.203 ./romexis-payload
```
Build Firebird payload:
```bash
docker build --build-arg ROMEXIS_VERSION=6.5.3.444.203 -t gitea.buchhorster.de/patrick/romexis-firebird-payload:latest ./romexis-firebird-payload
```
Build server image:
```bash
docker build --build-arg TARGETARCH=amd64 --build-arg ROMEXIS_VERSION=6.5.3.444.203 -t gitea.buchhorster.de/patrick/romexis-server:6.5.3.444.203-amd64 ./romexis
```
---
## Debug Build
Disable cache and show full logs:
```bash
docker build --no-cache --progress=plain --build-arg TARGETARCH=amd64 --build-arg ROMEXIS_VERSION=6.5.3.444.203 -t gitea.buchhorster.de/patrick/romexis-server:6.5.3.444.203-amd64 ./romexis
```
---
## Docker Cache Cleanup
Buildx cache:
```bash
docker buildx prune -a -f
```
Builder cache:
```bash
docker builder prune -a -f
```
System cleanup:
```bash
docker system prune -a -f
```
Do not use `--volumes` unless you intentionally want to remove unused database/application volumes.