-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathDockerfile-jar.template
More file actions
31 lines (25 loc) · 1.87 KB
/
Copy pathDockerfile-jar.template
File metadata and controls
31 lines (25 loc) · 1.87 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# Copyright (c) 2023, Oracle and/or its affiliates.
# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl.
# dockerfile for running the application from JAR
FROM container-registry.oracle.com/java/jdk-no-fee-term:17
RUN useradd -U -d /home/appuser appuser && \
mkdir /opt/app && \
mkdir /opt/apm && \
mkdir /opt/apm-agent && \
chown appuser:appuser /opt/app /opt/apm /opt/apm-agent
USER appuser
WORKDIR /home/appuser
# COPY --chown=appuser:appuser .oci .
WORKDIR /opt/apm
RUN curl https://repo.maven.apache.org/maven2/com/oracle/apm/agent/java/apm-java-agent-installer/maven-metadata.xml -o maven-metadata.xml
RUN grep -e 'latest' maven-metadata.xml > maven-metadata-latest.xml
RUN APMVERSION="$(cat maven-metadata-latest.xml | tr -d '<latest>' | tr -d '</latest>' | tr -d ' ')" && \
URL="https://repo.maven.apache.org/maven2/com/oracle/apm/agent/java/apm-java-agent-installer/$${APMVERSION}/apm-java-agent-installer-$${APMVERSION}.jar" && \
rm maven-metadata* && \
curl "$${URL}" -o apm-java-agent-installer.jar
RUN java -jar ./apm-java-agent-installer.jar provision-agent -service-name=${application_name} -destination=/opt/apm-agent -private-data-key=${private_data_key} -data-upload-endpoint=${endpoint}
WORKDIR /opt/app
COPY --chown=appuser:appuser self.keystore .
COPY --chown=appuser:appuser app.jar ./app.jar
COPY --chown=appuser:appuser wallet ./wallet
CMD ["java", "-javaagent:/opt/apm-agent/oracle-apm-agent/bootstrap/ApmAgent.jar", "-jar", ${vm_options} "-Dspring.jmx.enabled=true", "-Dserver.tomcat.mbeanregistry.enabled=true", "-Doracle.jdbc.fanEnabled=false", "-Dserver.ssl.enabled=true", "-D${port_property}=${exposed_port}", "-D${key_alias_property}=self_signed", "-D${keystore_property}=self.keystore", "-D${keystore_type_property}=jks", "-D${keystore_password_property}=${keystore_password}", "app.jar" ${program_arguments}]