Sign inSign up

herrera/oracle-jdk

By herrera

Updated over 8 years ago

Alpine Image with Oracle JDK 8

Image
0

10K+

herrera/oracle-jdk repository overview

Alpine Image with Oracle JDK 8

Fork

Based on Oracle Java8 over AlpineLinux with glibc 2.27.

Modified Dockerfile:

FROM alpine:3.7

LABEL maintainer='Rafael de Paula Herrera <[email protected]>'

ARG JAVA_VERSION_MAJOR='8'
ARG JAVA_VERSION_MINOR='162'
ARG JAVA_VERSION_BUILD='12'
ARG JAVA_PACKAGE='jdk'
ARG JAVA_JCE='standard'
ARG GLIBC_REPO='https://github.com/sgerrand/alpine-pkg-glibc'
ARG GLIBC_VERSION='2.27-r0'

ENV JAVA_HOME='/opt/jdk'
ENV PATH="${PATH}:/opt/jdk/bin"
ENV LANG='C.UTF-8'

RUN set -ex && \
  if [ "${JAVA_VERSION_MAJOR}" == '7' ]; then \
    echo >&2 'ERROR: Oracle no longer publishes JAVA7 packages...' && \
    exit 1; \
  fi && \
  apk -U upgrade && \
  apk add curl ca-certificates libstdc++ && \
  for pkg in glibc-${GLIBC_VERSION} glibc-bin-${GLIBC_VERSION} glibc-i18n-${GLIBC_VERSION}; do \
    curl -sSL ${GLIBC_REPO}/releases/download/${GLIBC_VERSION}/${pkg}.apk -o /tmp/${pkg}.apk; \
  done && \
  apk add --allow-untrusted /tmp/*.apk && \
  rm -v /tmp/*.apk && \
  ( /usr/glibc-compat/bin/localedef --force --inputfile POSIX --charmap UTF-8 C.UTF-8 || true ) && \
  /usr/glibc-compat/sbin/ldconfig /lib /usr/glibc-compat/lib && \
  mkdir /opt && \
  curl -jksSLH 'Cookie: oraclelicense=accept-securebackup-cookie' -o /tmp/java.tar.gz http://download.oracle.com/otn-pub/java/jdk/${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-b${JAVA_VERSION_BUILD}/0da788060d494f5095bf8624735fa2f1/${JAVA_PACKAGE}-${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-linux-x64.tar.gz && \
  JAVA_PACKAGE_SHA256=$(curl -sSL https://www.oracle.com/webfolder/s/digest/${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}checksum.html | grep -E "${JAVA_PACKAGE}-${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-linux-x64\.tar\.gz" | grep -Eo '(sha256: )[^<]+' | cut -d: -f2 | xargs) && \
  echo "${JAVA_PACKAGE_SHA256}  /tmp/java.tar.gz" > /tmp/java.tar.gz.sha256 && \
  sha256sum -c /tmp/java.tar.gz.sha256 && \
  gunzip /tmp/java.tar.gz && \
  tar -C /opt -xf /tmp/java.tar && \
  ln -s /opt/jdk1.${JAVA_VERSION_MAJOR}.0_${JAVA_VERSION_MINOR} /opt/jdk && \
  if [ "${JAVA_JCE}" == 'unlimited' ]; then \
    echo 'INFO: Installing Unlimited JCE policy' >&2 && \
    curl -jksSLH 'Cookie: oraclelicense=accept-securebackup-cookie' -o /tmp/jce_policy-${JAVA_VERSION_MAJOR}.zip http://download.oracle.com/otn-pub/java/jce/${JAVA_VERSION_MAJOR}/jce_policy-${JAVA_VERSION_MAJOR}.zip && \
    cd /tmp && unzip /tmp/jce_policy-${JAVA_VERSION_MAJOR}.zip && \
    cp -v /tmp/UnlimitedJCEPolicyJDK8/*.jar /opt/jdk/jre/lib/security; \
  fi && \
  sed -i s/#networkaddress.cache.ttl=-1/networkaddress.cache.ttl=10/ $JAVA_HOME/jre/lib/security/java.security && \
  apk del curl glibc-i18n && \
  rm -rf /opt/jdk/*src.zip \
    /opt/jdk/lib/missioncontrol \
    /opt/jdk/lib/visualvm \
    /opt/jdk/lib/*javafx* \
    /opt/jdk/jre/plugin \
    /opt/jdk/jre/bin/javaws \
    /opt/jdk/jre/bin/jjs \
    /opt/jdk/jre/bin/orbd \
    /opt/jdk/jre/bin/pack200 \
    /opt/jdk/jre/bin/policytool \
    /opt/jdk/jre/bin/rmid \
    /opt/jdk/jre/bin/rmiregistry \
    /opt/jdk/jre/bin/servertool \
    /opt/jdk/jre/bin/tnameserv \
    /opt/jdk/jre/bin/unpack200 \
    /opt/jdk/jre/lib/javaws.jar \
    /opt/jdk/jre/lib/deploy* \
    /opt/jdk/jre/lib/desktop \
    /opt/jdk/jre/lib/*javafx* \
    /opt/jdk/jre/lib/*jfx* \
    /opt/jdk/jre/lib/amd64/libdecora_sse.so \
    /opt/jdk/jre/lib/amd64/libprism_*.so \
    /opt/jdk/jre/lib/amd64/libfxplugins.so \
    /opt/jdk/jre/lib/amd64/libglass.so \
    /opt/jdk/jre/lib/amd64/libgstreamer-lite.so \
    /opt/jdk/jre/lib/amd64/libjavafx*.so \
    /opt/jdk/jre/lib/amd64/libjfx*.so \
    /opt/jdk/jre/lib/ext/jfxrt.jar \
    /opt/jdk/jre/lib/ext/nashorn.jar \
    /opt/jdk/jre/lib/oblique-fonts \
    /opt/jdk/jre/lib/plugin.jar \
    /tmp/* /var/cache/apk/* && \
  echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf

Tag summary

Content type

Image

Digest

Size

62.8 MB

Last updated

over 8 years ago

docker pull herrera/oracle-jdk