feat(docker): Dockerfile для read-api и projection-writer
Multi-stage build (Maven 3.9.9 + Eclipse Temurin 21 → eclipse-temurin:21-jre): - ordinis-read-api/Dockerfile (port 8081) - ordinis-projection-writer/Dockerfile (port 8082) JVM args: -XX:+UseZGC -XX:MaxRAMPercentage=75 (low-pause GC + container-aware memory). MaxRAMPercentage важен потому что Helm задаёт container memory limit через resources.limits.memory; JVM должна respect'ить это. Helm chart (terravault/ordinis-infra/charts/ordinis/) теперь имеет полный набор images для deploy: registry.k8s.265.nstart.local/terravault/ordinis-app:<tag> registry.k8s.265.nstart.local/terravault/ordinis-read-api:<tag> registry.k8s.265.nstart.local/terravault/ordinis-projection-writer:<tag> registry.k8s.265.nstart.local/terravault/ordinis-migrations:<tag>
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
FROM maven:3.9.9-eclipse-temurin-21 AS build
|
||||
WORKDIR /build
|
||||
COPY pom.xml ./
|
||||
COPY ordinis-domain ./ordinis-domain
|
||||
COPY ordinis-validation ./ordinis-validation
|
||||
COPY ordinis-events-api ./ordinis-events-api
|
||||
COPY ordinis-outbox ./ordinis-outbox
|
||||
COPY ordinis-rest-api ./ordinis-rest-api
|
||||
COPY ordinis-cuod-bundle ./ordinis-cuod-bundle
|
||||
COPY ordinis-app ./ordinis-app
|
||||
COPY ordinis-read-api ./ordinis-read-api
|
||||
COPY ordinis-migrations ./ordinis-migrations
|
||||
COPY ordinis-projection-writer ./ordinis-projection-writer
|
||||
RUN mvn -B -pl ordinis-projection-writer -am package -DskipTests
|
||||
|
||||
FROM eclipse-temurin:21-jre
|
||||
WORKDIR /app
|
||||
COPY --from=build /build/ordinis-projection-writer/target/*.jar /app/app.jar
|
||||
EXPOSE 8082
|
||||
ENTRYPOINT ["java", "-XX:+UseZGC", "-XX:MaxRAMPercentage=75", "-jar", "/app/app.jar"]
|
||||
@@ -0,0 +1,20 @@
|
||||
FROM maven:3.9.9-eclipse-temurin-21 AS build
|
||||
WORKDIR /build
|
||||
COPY pom.xml ./
|
||||
COPY ordinis-domain ./ordinis-domain
|
||||
COPY ordinis-validation ./ordinis-validation
|
||||
COPY ordinis-events-api ./ordinis-events-api
|
||||
COPY ordinis-outbox ./ordinis-outbox
|
||||
COPY ordinis-rest-api ./ordinis-rest-api
|
||||
COPY ordinis-cuod-bundle ./ordinis-cuod-bundle
|
||||
COPY ordinis-app ./ordinis-app
|
||||
COPY ordinis-projection-writer ./ordinis-projection-writer
|
||||
COPY ordinis-migrations ./ordinis-migrations
|
||||
COPY ordinis-read-api ./ordinis-read-api
|
||||
RUN mvn -B -pl ordinis-read-api -am package -DskipTests
|
||||
|
||||
FROM eclipse-temurin:21-jre
|
||||
WORKDIR /app
|
||||
COPY --from=build /build/ordinis-read-api/target/*.jar /app/app.jar
|
||||
EXPOSE 8081
|
||||
ENTRYPOINT ["java", "-XX:+UseZGC", "-XX:MaxRAMPercentage=75", "-jar", "/app/app.jar"]
|
||||
Reference in New Issue
Block a user