Java
Yum
docker
oracle-jdk
dockerformac

Oracle JDKをインストールしたDockerイメージを作る(yum

More than 1 year has passed since last update.

環境

# Docker for Mac

$ docker -v
Docker version 1.13.0, build 49bf474


JDKが置いてあるURLの形式が昔から変わっていたので、URL自体とファイル名をパラメータとして渡せるようにした。

それ以外は、ライセンス同意のCookieを付けているくらい。

http://download.oracle.com/otn-pub/java/jdk/{8u121-b13:version}/{e9e7ea248e2c4826b92b3f075a80e441:ランダムっぽい文字列}/{jdk-8u121-linux-x64.rpm:ファイル名}

URLとファイル名はOracleのダウンロードページでライセンスに同意して取得。

スクリーンショット 2017-02-04 18.50.00.png


Dockerfile

FROM amazonlinux

ARG jdk_url
ARG jdk_rpm_name

RUN \
yum install -y wget findutils which

RUN \
wget -q \
--no-check-certificate \
--no-cookies \
--header "Cookie: oraclelicense=accept-securebackup-cookie" \
${jdk_url}

RUN \
rpm -ivh ${jdk_rpm_name}


ビルド

$ docker build . --build-arg jdk_url=http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-x64.rpm --build-arg jdk_rpm_name=jdk-8u121-linux-x64.rpm

--build-argは指定するパラメータ分必要なことに地味にハマった。


参考