backend.Dockerfile 627 B

1234567891011121314151617
  1. FROM maven:3.9.11-eclipse-temurin-21 AS build
  2. WORKDIR /workspace
  3. ARG MAVEN_OPTS="-XX:MaxRAMPercentage=50 -Djava.awt.headless=true"
  4. ENV MAVEN_OPTS=${MAVEN_OPTS}
  5. COPY backend/pom.xml ./pom.xml
  6. RUN mvn -q -DskipTests dependency:go-offline
  7. COPY backend/src ./src
  8. RUN mvn -q -DskipTests package
  9. FROM eclipse-temurin:21-jre
  10. WORKDIR /app
  11. ENV JAVA_TOOL_OPTIONS="-XX:MaxRAMPercentage=50"
  12. RUN useradd -r -u 10001 appuser && mkdir -p /app/storage && chown -R appuser:appuser /app
  13. USER appuser
  14. COPY --from=build /workspace/target/organization-people-platform-1.0.0.jar /app/app.jar
  15. EXPOSE 8080
  16. ENTRYPOINT ["java", "-jar", "/app/app.jar"]