summaryrefslogtreecommitdiff
path: root/src/ad/Dockerfile
diff options
context:
space:
mode:
Diffstat (limited to 'src/ad/Dockerfile')
-rw-r--r--src/ad/Dockerfile35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/ad/Dockerfile b/src/ad/Dockerfile
new file mode 100644
index 0000000..92f69c0
--- /dev/null
+++ b/src/ad/Dockerfile
@@ -0,0 +1,35 @@
+# Copyright The OpenTelemetry Authors
+# SPDX-License-Identifier: Apache-2.0
+
+
+FROM --platform=${BUILDPLATFORM} eclipse-temurin:21-jdk AS builder
+ARG _JAVA_OPTIONS
+WORKDIR /usr/src/app/
+
+COPY ./src/ad/gradlew* ./src/ad/settings.gradle* ./src/ad/build.gradle ./
+COPY ./src/ad/gradle ./gradle
+
+RUN chmod +x ./gradlew
+RUN ./gradlew
+RUN ./gradlew downloadRepos
+
+COPY ./src/ad/ ./
+COPY ./pb/ ./proto
+RUN chmod +x ./gradlew
+RUN ./gradlew installDist -PprotoSourceDir=./proto
+
+# -----------------------------------------------------------------------------
+
+FROM eclipse-temurin:21-jre
+
+ARG OTEL_JAVA_AGENT_VERSION
+ARG _JAVA_OPTIONS
+
+WORKDIR /usr/src/app/
+
+COPY --from=builder /usr/src/app/ ./
+ADD --chmod=644 https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases/download/v$OTEL_JAVA_AGENT_VERSION/opentelemetry-javaagent.jar /usr/src/app/opentelemetry-javaagent.jar
+ENV JAVA_TOOL_OPTIONS=-javaagent:/usr/src/app/opentelemetry-javaagent.jar
+
+EXPOSE ${AD_PORT}
+ENTRYPOINT [ "./build/install/opentelemetry-demo-ad/bin/Ad" ]