2017-02-28 6 views
1

dockerイメージでdockerにopenjdkをインストールしたいと思います。私がしようとすると、これは、このエラーメッセージが表示されますです:dockerイメージのJavaでdockerをインストール

fetch http://dl-cdn.alpinelinux.org/alpine/v3.5/main/x86_64/APKINDEX.tar.gz 
fetch http://dl-cdn.alpinelinux.org/alpine/v3.5/community 
ERROR: unsatisfiable constraints: 
    openjdk8-8.121.13-r0: 
    breaks: world[openjdk8=8.111.14-r0] 
The command '/bin/sh -c set -x && apk add --no-cache  openjdk8="$JAVA_ALPINE_VERSION" && [ "$JAVA_HOME" = "$(docker-java-home)" ]' returned a non-zero code: 1 

私Dockerfileは現在、次のようになります。

FROM docker:latest 
RUN apk update 
ENV LANG C.UTF-8 
RUN { \ 
     echo '#!/bin/sh'; \ 
     echo 'set -e'; \ 
     echo; \ 
     echo 'dirname "$(dirname "$(readlink -f "$(which javac || which java)")")"'; \ 
    } > /usr/local/bin/docker-java-home \ 
    && chmod +x /usr/local/bin/docker-java-home 
ENV JAVA_HOME /usr/lib/jvm/java-1.8-openjdk 
ENV PATH $PATH:/usr/lib/jvm/java-1.8-openjdk/jre/bin:/usr/lib/jvm/java-1.8-openjdk/bin 
ENV JAVA_VERSION 8u111 
ENV JAVA_ALPINE_VERSION 8.111.14-r0 
RUN set -x \ 
    && apk add --no-cache \ 
     openjdk8="$JAVA_ALPINE_VERSION" \ 
&& [ "$JAVA_HOME" = "$(docker-java-home)" ] 

+1

は、ドッキングウィンドウを行うには、ゼロを持っています。これは高山の制約です。バージョンを削除し、正常に動作します。 – user2105103

+0

また、問題の内容を直接伝えます。 – johnharris85

答えて

0

がどのように公式のJavaのDockerfile参照ありますアルパイン画像の上で画像が焼く: https://github.com/docker-library/openjdk/blob/9a0822673dffd3e5ba66f18a8547aa60faed6d08/8-jdk/alpine/Dockerfile

それとも別の方法の周りにそれを行うことができ、

# build ontop of official Java image 
FROM java:openjdk-8-jdk-alpine 

RUN apk update && \ 
    apk add docker 
... 
+0

別のベースイメージを使用する必要がある場合は、 –

+0

それから、おそらくJavaインストールで特定のベースイメージからイメージを焼く必要があります。しかし、ほとんどの場合、ベースイメージにJavaが必要な場合、Javaを含むイメージをベイク処理している可能性が高くなります。 – Leon

関連する問題