github.com/emc-advanced-dev/unik@v0.0.0-20190717152701-a58d3e8e33b7/containers/compilers/rump/java/Dockerfile.xen (about) 1 FROM projectunik/compilers-rump-base-xen:6db4e1de1235c432 2 3 RUN apt-get update 4 RUN apt-get install -y pkg-config 5 RUN apt-get install -y openjdk-8-jdk 6 RUN apt-get install -y cpio 7 RUN apt-get install -y mercurial 8 RUN apt-get install -y unzip 9 RUN apt-get install -y zip 10 11 RUN cd /opt/ && git clone https://github.com/rumpkernel/rumprun-packages 12 RUN cd /opt/rumprun-packages/openjdk8 && \ 13 cp ../config.mk.dist ../config.mk && \ 14 perl -pi -e 's/RUMPRUN_TOOLCHAIN_TUPLE=/RUMPRUN_TOOLCHAIN_TUPLE=x86_64-rumprun-netbsd/g' ../config.mk && \ 15 perl -pi -e 's/images\/jre.iso images\/jar.ffs//g' Makefile && \ 16 make 17 18 ENV RUMP_BAKE=xen_pv 19 20 RUN rumprun-bake $RUMP_BAKE \ 21 /opt/rumprun-packages/openjdk8/bin/java.bin \ 22 /opt/rumprun-packages/openjdk8/bin/java 23 24 RUN mkdir -p /tmp/build 25 # Get Jetty for .war builds 26 WORKDIR /tmp/build 27 RUN curl -O http://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.3.11.v20160721/jetty-distribution-9.3.11.v20160721.tar.gz 28 RUN tar xvf jetty-distribution-9.3.11.v20160721.tar.gz 29 30 COPY java-wrapper/target/java-wrapper-1.0-SNAPSHOT-jar-with-dependencies.jar /tmp/build/program.jar 31 32 VOLUME /opt/code 33 WORKDIR /opt/rumprun-packages/openjdk8 34 35 # RUN LIKE THIS: docker run --rm -v /path/to/code:/opt/code projectunik/compilers-rump-nodejs-hw 36 CMD set -x && \ 37 (if [[ "$MAIN_FILE" == *.war ]]; then echo "building jetty unikernel" && cp -r /tmp/build/jetty-distribution-*/ /opt/code/jetty && mv /opt/code/$MAIN_FILE /opt/code/jetty/webapps/$MAIN_FILE; fi) && \ 38 cp /opt/rumprun-packages/openjdk8/bin/java.bin /opt/code/program.bin && \ 39 cp -r /opt/rumprun-packages/openjdk8/build/javadist/jvm/openjdk-1.8.0-internal/ /opt/code/jdk && \ 40 cp /tmp/build/program.jar /opt/code/