cd parkhaus-manager/
mvn clean install
mvn quarkus:dev
cd parkhaus-schranke/
mvn clean install
mvn quarkus:dev -D debug=5105
Die Anwendung kann auch als GraalVM Native Image kompiliert werden. Dies ist im Docker-Image im Ordner parkhaus-manager/src/docker/Dockerfile.native
umgesetzt. Allerdings werden Embedded-Datenbank als Native-Image nicht unterstüzt (siehe Quarkus Datasource Guide). Dementsprechend benötigen wir eine externe Datenbank, die von der Anwendung genutzt werden kann. Dazu starten wir eine H2-Instanz als zusätzlichen Docker-Container. Das Dockerfile.native
ist so konfiguriert, dass die externe Datenbank-URL beim Container-Start mitgegeben werden kann (siehe Quarkus-Container starten). Zusätzlich führen wir die Container in einem eigenen Docker-Network aus.
cd parkhaus-manager
mvn package -Pnative -Dquarkus.native.container-build=true -Dquarkus.container-image.build=true
docker network create native-quarkus
docker pull oscarfonts/h2
docker run -d -p 1521:1521 -p 81:81 -e H2_OPTIONS='-ifNotExists' --network native-quarkus --name quarkus-h2 oscarfonts/h2
docker run -i -p 8180:8180 --network native-quarkus $USER/parkhaus-manager-quarkus:1.0 "-Dquarkus.datasource.jdbc.url=jdbc:h2:tcp://quarkus-h2:1521/test"