20 lines
697 B
Docker
Executable File
20 lines
697 B
Docker
Executable File
FROM maven:3.9-eclipse-temurin-17 AS build
|
|
WORKDIR /app
|
|
COPY pom.xml .
|
|
RUN mvn dependency:go-offline -B
|
|
COPY src ./src
|
|
RUN mvn package -DskipTests -B
|
|
RUN curl -L -o opentelemetry-javaagent.jar https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/latest/download/opentelemetry-javaagent.jar
|
|
|
|
FROM eclipse-temurin:17-jre-alpine
|
|
|
|
# Best practice: run as a non-root user
|
|
RUN addgroup -S spring && adduser -S spring -G spring
|
|
USER spring:spring
|
|
|
|
WORKDIR /app
|
|
COPY --from=build /app/target/app.jar app.jar
|
|
COPY --from=build /app/opentelemetry-javaagent.jar opentelemetry-javaagent.jar
|
|
EXPOSE 8080
|
|
ENTRYPOINT ["java", "-javaagent:opentelemetry-javaagent.jar", "-jar", "app.jar"]
|