Installation & Setup Server
Der Beispielserver stellt die drei sichtbaren Artefakte des Vorhabens als Container bereit: diese Dokumentationswebseite, die Muster-Versicherung (die Services) und den Muster-Vermittler (Installation & Setup Client). Alles liegt hinter einem Einstiegspunkt, einem Host und einem Port, sodass die Doku den laufenden Muster-Vermittler verlinken kann und der Client die Services ohne Cross-Origin-Konfiguration erreicht.
Die Muster-Versicherung läuft dabei dreimal, einmal je Beispielversicherer: Eine laufende Instanz ist genau eine Versicherung mit ihrem Produktkatalog und ihrem Tarif. So lässt sich ein Vermittler gegen mehrere Versicherungen testen, wie es die Praxis verlangt.
Quelle: docker-compose.yaml, Dockerfile_Server, Dockerfile_Client und Dockerfile_Docs in der Wurzel des
Repositorys; die nginx-Konfiguration des Einstiegspunkts liegt in reference/sample-broker/nginx.conf.
Öffentlicher Beispielserver
Ein Beispielserver läuft öffentlich unter https://kapdion.com/omds-ld:
| Was | Adresse |
|---|---|
Dokumentation |
|
Muster-Vermittler |
|
Schnittstelle Disrupto |
|
Schnittstelle Anglo-American |
|
Schnittstelle Pfefferminzia |
|
MCP-Server (Streamable HTTP) |
|
Chatbot mit den MCP-Servern |
Die Links der Schnittstellen führen auf die Produktliste (listProducts). Die Geschäftsfälle liegen nur im Speicher
der jeweiligen Instanz; ein neues Deployment verwirft sie.
Voraussetzungen
-
Docker mit Docker Compose (Compose V2, Befehl
docker compose). -
Netzzugang beim Bauen: Maven- und npm-Abhängigkeiten sowie das UI-Bundle der Dokumentation werden beim Build geladen.
-
Nichts weiter – weder JDK noch Node.js noch Maven müssen auf dem Server installiert sein; die Images bauen alles selbst.
Starten
docker compose up --build -d # Images bauen und alle Container im Hintergrund starten
docker compose logs -f # Logs verfolgen
docker compose down # alle Container stoppen und entfernen
Der erste Build dauert einige Minuten (Maven-Build der Muster-Versicherung, Angular-Build des Muster-Vermittlers, Antora-Build der Dokumentation). Die Muster-Versicherung hält ihre Geschäftsfälle im Speicher; ein Neustart oder Rebuild verwirft sie.
Services, Pfade und Ports
| Service (Compose) | Inhalt | Erreichbar unter |
|---|---|---|
|
Muster-Vermittler (Angular) mit nginx als Einstiegspunkt |
Host-Port |
|
Diese Dokumentation (Antora-Site) |
nur über den Einstiegspunkt: |
|
Muster-Versicherung als Disrupto |
|
|
Muster-Versicherung als Anglo-American |
|
|
Muster-Versicherung als Pfefferminzia |
|
Die drei Instanzen der Muster-Versicherung entstehen aus einem Image; welcher Beispielversicherer gespielt wird,
bestimmt die Umgebungsvariable SPRING_PROFILES_ACTIVE (disrupto, angloamerican, pfefferminzia). Im Container
lauscht jede Instanz auf Port 9090; nach außen unterscheiden sie sich durch den Pfad am Einstiegspunkt und durch den
direkten Host-Port.
Der Pfad /omds-ld/api/ bleibt als Alias für Disrupto erhalten: für Werkzeuge, das Lebenszeichen der Infoseite und
bestehende Anleitungen. Neue Clients sprechen die Instanzen über /omds-ld/insurers/<name>/api/ an; der
Muster-Vermittler kennt diese Pfade als Vorbelegung seiner Versichererliste.
Ein Aufruf von http://<host>:9081/ leitet auf die Startseite der Dokumentation weiter. Der Muster-Vermittler ist von
dort verlinkt.
Direkte Host-Ports (9080, 9082, 9083) sind für Werkzeuge gedacht, die eine Instanz ohne den Einstiegspunkt
ansprechen, etwa Validatoren, Selbsttests oder ein Muster-Vermittler auf einem anderen Host. Jede Instanz erlaubt
Cross-Origin-Anfragen auf ihre Services. Eine Geschäftsfall-ID gilt nur bei der Instanz, die sie vergeben hat.
Automatisches Deployment
Ein Push auf den Branch master baut die Images neu und ersetzt alle Container
(docker compose up -d --build, Gitea-Workflow .gitea/workflows/build-deploy.yaml). Der Runner läuft auf dem
Beispielserver selbst; es ist keine weitere Konfiguration nötig.
Lokal ohne Container
Für die Entwicklung läuft die Muster-Versicherung auch direkt aus dem Repository, eine Instanz je Beispielversicherer:
mvn spring-boot:run -pl reference/sample-insurer # Disrupto auf :9090
mvn spring-boot:run -pl reference/sample-insurer "-Dspring-boot.run.profiles=angloamerican" # Anglo-American auf :9091
mvn spring-boot:run -pl reference/sample-insurer "-Dspring-boot.run.profiles=pfefferminzia" # Pfefferminzia auf :9092
Die Services liegen dann unter http://localhost:909x/omds-ld/api; die Infoseite unter http://localhost:909x/ nennt
den Beispielversicherer der Instanz. Für die meisten Arbeiten genügt die Disrupto-Instanz; der Entwicklungsserver des
Muster-Vermittlers leitet die drei Pfade /omds-ld/insurers/<name>/api auf die Ports 9090, 9091 und 9092 weiter
(siehe Installation & Setup Client).