34 lines
1.1 KiB
Docker
34 lines
1.1 KiB
Docker
# 1단계: OTEL Java 에이전트 다운로드
|
|
FROM alpine:3.20 AS otel
|
|
ARG OTEL_VERSION=2.21.0
|
|
|
|
RUN apk add --no-cache curl && \
|
|
curl -fL \
|
|
https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/download/v${OTEL_VERSION}/opentelemetry-javaagent.jar \
|
|
-o /opentelemetry-javaagent.jar
|
|
|
|
# 2단계: Tomcat 이미지 (Java 8 기준, Java 17 쓸 거면 jdk17-temurin 그대로 사용)
|
|
FROM tomcat:9.0-jdk8-temurin
|
|
|
|
ENV TZ=Asia/Seoul \
|
|
OTEL_SERVICE_NAME=helpdesk_service \
|
|
OTEL_EXPORTER_OTLP_ENDPOINT=http://192.168.100.203:4317 \
|
|
OTEL_EXPORTER_OTLP_PROTOCOL=grpc \
|
|
OTEL_RESOURCE_ATTRIBUTES="deployment.environment=prod" \
|
|
JAVA_TOOL_OPTIONS="-javaagent:/opt/opentelemetry-javaagent.jar"
|
|
|
|
# 타임존 설정
|
|
RUN ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime
|
|
|
|
# OTEL 에이전트 복사
|
|
COPY --from=otel /opentelemetry-javaagent.jar /opt/opentelemetry-javaagent.jar
|
|
|
|
# 기본 ROOT 앱 제거
|
|
RUN rm -rf /usr/local/tomcat/webapps/*
|
|
|
|
# Maven 빌드된 WAR 복사
|
|
# Maven 빌드 결과 파일명에 맞게 수정
|
|
COPY target/sayit-helpdesk.war /usr/local/tomcat/webapps/ROOT.war
|
|
|
|
EXPOSE 8080
|
|
CMD ["catalina.sh","run"] |