agent-foundation/Dockerfile
2026-09-23 10:52:11 +08:00

25 lines
702 B
Docker

# Build stage
ARG MAVEN_IMAGE=maven:3.9.16-eclipse-temurin-17-alpine
ARG RUNTIME_IMAGE=eclipse-temurin:17-jre-alpine
FROM ${MAVEN_IMAGE} AS builder
WORKDIR /app
COPY .mvn/settings.xml /root/.m2/settings.xml
COPY pom.xml .
RUN mvn -B -ntp -Dmaven.test.skip=true dependency:go-offline
COPY src ./src
RUN mvn -B -ntp -Dmaven.test.skip=true clean package
# Runtime stage
FROM ${RUNTIME_IMAGE}
WORKDIR /app
COPY --from=builder /app/target/agent-foundation-0.0.1-SNAPSHOT.jar app.jar
EXPOSE 8880
# JAVA_TOOL_OPTIONS is read directly by the JVM, so no shell entrypoint is needed.
ENV JAVA_TOOL_OPTIONS=""
ENV SPRING_PROFILES_ACTIVE=prod
ENV SERVER_PORT=8880
ENTRYPOINT ["java", "-jar", "/app/app.jar"]