Files
coal/Dockerfile
lihongjie0209 cefc6ed004 build(Dockerfile): 添加 OpenTelemetry Java Agent 并调整应用启动方式
- 添加 OpenTelemetry Java Agent 到 Docker 镜像中
- 调整应用启动方式,使用 sh -c来执行 Java 命令
2025-04-04 23:18:53 +08:00

23 lines
990 B
Docker

FROM registry-vpc.cn-beijing.aliyuncs.com/lihongjie/maven:3-eclipse-temurin-17 as build
WORKDIR /code
COPY pom.xml .
COPY settings.xml .
RUN mvn verify --fail-never -P build --settings settings.xml && mvn dependency:resolve-plugins -P build --settings settings.xml
COPY src ./src
RUN mvn clean install -DskipTests -P build --settings settings.xml && \
java -Djarmode=layertools -jar target/*.jar extract --destination target/extracted
FROM registry-vpc.cn-beijing.aliyuncs.com/lihongjie/eclipse-temurin:21.0.4_7-jdk-noble
WORKDIR /app
ARG JAR_FILE=target/*.jar
ADD agent/opentelemetry-javaagent.jar /app/agent/opentelemetry-javaagent.jar
COPY --from=build /code/target/extracted/dependencies/ ./
COPY --from=build /code/target/extracted/spring-boot-loader/ ./
COPY --from=build /code/target/extracted/snapshot-dependencies/ ./
COPY --from=build /code/target/extracted/application/ ./
ENTRYPOINT ["sh", "-c", "java ${JAVA_OPTS} org.springframework.boot.loader.launch.JarLauncher"]