I am using tomcat, jre 8(openjdk),alpine linux as base image. My Dockerfile is follow:
FROM tomcat:8.5.39-jre8-alpine
RUN rm -rf /usr/local/tomcat/webapps/*
COPY target/openjdk8-8.252.09-r0.apk /usr/local/tomcat/.
RUN apk add --allow-untrusted /usr/local/tomcat/openjdk8-8.252.09-r0.apk
ENV JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk
ENV PATH=/usr/local/tomcat/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/jvm/java-1.8-openjdk/bin
RUN export JAVA_HOME
RUN export PATH
I want to use jdk8 instead of jre8.
In order to do that, I have downloaded same version of JDK8 and install it on alpine linux.
COPY target/openjdk8-8.252.09-r0.apk /usr/local/tomcat/.
RUN apk add --allow-untrusted /usr/local/tomcat/openjdk8-8.252.09-r0.apk
And to make sure desired java(JDK8) is picked up, I set JAVA_HOME and PATH.
ENV JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk
ENV PATH=/usr/local/tomcat/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/jvm/java-1.8-openjdk/bin
But still when I run Tomcat(when I run container),
/usr/lib/jvm/java-1.8-openjdk/jre
is logged in console meaning that original JRE is still in use.
I have read this one. But I do not understand clearly what he means by it.
Is there any workaround or any way to get it working? Or where did I make mistake?
Cheers