Installing Java on docker in docker image

I want to install the openjdk on the docker in docker image. When I try this is get this error message:

  • Using iPython with remote docker container in a local project directory
  • How do networking and load balancer work in docker swarm mode?
  • run django in docker container
  • Running multiple time the same docker image
  • java tomcat let's encrypt with docker
  • Ant copy to docker-tomcat container
  • 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
    

    My Dockerfile currently looks like this:

    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)" ]
    

  • Access VMware Host from docker container java app
  • mounted directory on host does not work or access docker container
  • run symfony2 app with docker [File not found.]
  • How to communicate between Docker containers via “hostname”
  • Docker - how to cache added directory?
  • WordPress docker compose won't start mysql
  • One Solution collect form web for “Installing Java on docker in docker image”

    There’s a Dockerfile reference on how official Java image is baking on top of alpine image:
    https://github.com/docker-library/openjdk/blob/9a0822673dffd3e5ba66f18a8547aa60faed6d08/8-jdk/alpine/Dockerfile

    Or you could do it another way around,

    # build ontop of official Java image
    FROM java:openjdk-8-jdk-alpine
    
    RUN apk update && \
        apk add docker
    ...
    
    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.