Private
Public Access
Build System hinzugefügt
+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.
|
||||
Reference in New Issue
Block a user