如何在基于 CentOS 的 Dockerfile 中定义 OpenJDK 8?

How to define OpenJDK 8 in CentOS based Dockerfile?

假设有一个 CentOS Dockerfile:

FROM centos

为它添加OpenJDK 8 的正确方法是什么?

我尝试使用与 Fedora 类似的方法 https://github.com/projectatomic/docker-fedora-images/blob/master/java-openjdk-8/Dockerfile

但是当我 运行 图像 java 版本是 "1.7.0_111",即使它应该是 JDK 8:

docker run -i -t <image> /bin/bash

[user@2fcc1e47c3cd projects]$ java -version

java version "1.7.0_111"
OpenJDK Runtime Environment (rhel-2.6.7.2.el7_2-x86_64 u111-b01)
OpenJDK 64-Bit Server VM (build 24.111-b01, mixed mode)

有许多描述 Oracle JDK 安装的资源,但我无法找到 OpenJDK

的任何相关说明

好像就这么简单:

FROM centos

RUN yum install -y \
       java-1.8.0-openjdk \
       java-1.8.0-openjdk-devel

ENV JAVA_HOME /etc/alternatives/jre
.
.

安装用于开发的 JDK 时,JAVA_HOME 应指向 JDK 而不是 JRE。

RUN yum install -y \
   java-1.8.0-openjdk \
   java-1.8.0-openjdk-devel

ENV JAVA_HOME /usr/lib/jvm/java-1.8.0-openjdk/