run-java-in-container.sh 583 B

12345678910111213141516171819202122
  1. #!/usr/bin/env bash
  2. set -Eeuo pipefail
  3. testDir="$(readlink -f "$(dirname "$BASH_SOURCE")")"
  4. runDir="$(dirname "$(readlink -f "$BASH_SOURCE")")"
  5. image="$1"
  6. # TODO make this work for ibmjava too (jre or sfj -> sdk)
  7. jdk="${image/jre/jdk}"
  8. newImage="$("$runDir/image-name.sh" librarytest/java-hello-world "$image")"
  9. "$runDir/docker-build.sh" "$testDir" "$newImage" <<EOD
  10. FROM $jdk AS jdk
  11. WORKDIR /container
  12. COPY dir/container.java ./
  13. RUN javac ./container.java
  14. FROM $image
  15. COPY --from=jdk /container /container
  16. WORKDIR /container
  17. EOD
  18. docker run --rm "$newImage" java -cp . container