Java 8 in der Docker-Datei von Centos 7 installieren

Oct 28 2020

Ich habe mir gerade diese Frage angesehen: Wie definiere ich OpenJDK 8 in CentOS-basierten Dockerfiles? .

Ich habe die vorgeschlagenen Antworten ausprobiert, erhalte jedoch nicht die erwarteten Ergebnisse. Hier ist der Inhalt meiner DockerFile

FROM centos:7

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

ENV JAVA_HOME /etc/alternatives/jre
RUN yum install maven
RUN yum install curl 
RUN yum install -y unzip

Ich baue das Image über: docker build -t container_image:latest -f DockerFile.build .Wenn ich dann renne docker run -it {image_id} /bin/bashund spiele, java --versionbekomme ich bash: java: command not found. Kann mir jemand helfen zu sehen, was ich hier falsch mache?

Wenn ich versuche, das JDK aus dem Container über zu installieren, erhalte yum install java-1.8.0-openjdkich außerdem Folgendes

java --version
Unrecognized option: --version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

Antworten

EvanGertis Oct 28 2020 at 03:39

Dies hat es behoben

FROM centos

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

RUN yum install -y maven
RUN yum install -y curl 
RUN yum install -y unzip