… and depending the base image this may not be available, even from the ppa repositories. Moreover, you cannot download it directly from Oracle without a username / password anymore, so this may break automation, if you do not host your own repositories. Have no fear, sdkman can come to the rescue and fetch for you a supported JDK8 version. You need to pay some extra care with JAVA_HOME
and PATH
though:
FROM python:3.6-slim RUN apt-get update && apt-get upgrade -y RUN apt-get install -y curl zip unzip RUN curl -fsSL https://get.sdkman.io -o get-sdkman.sh RUN sh ./get-sdkman.sh RUN bash -c "source /root/.sdkman/bin/sdkman-init.sh && sdk install java 8.0.212-amzn" ENV JAVA_HOME=/root/.sdkman/candidates/java/current ENV PATH=$JAVA_HOME/bin:$PATH CMD bash
Since curl | sudo bash
is a topic of contention, do your homework and decide whether you’re going to use it as displayed in the Dockerfile above, or employ some extra verification mechanism of your choice.