revenj.dockerfile 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. FROM mono:6.12.0.122
  2. RUN apt-get update -yqq && apt-get install -yqq unzip
  3. RUN mkdir /java
  4. WORKDIR /java
  5. RUN curl -sL -O https://download.java.net/java/GA/jdk10/10/binaries/openjdk-10_linux-x64_bin.tar.gz
  6. RUN tar xf openjdk-10_linux-x64_bin.tar.gz
  7. ENV JAVA_HOME=/java/jdk-10
  8. ENV PATH ${JAVA_HOME}/bin:${PATH}
  9. WORKDIR /revenj
  10. COPY Revenj.Bench Revenj.Bench
  11. COPY Revenj.Bench.sln Reveng.Bench.sln
  12. COPY Revenj.Http.exe.config Revenj.Http.exe.config
  13. RUN curl -sL -O https://github.com/ngs-doo/revenj/releases/download/v1.5.0/dsl-compiler.zip
  14. RUN unzip dsl-compiler.zip
  15. RUN rm dsl-compiler.zip
  16. RUN curl -sL -O https://github.com/ngs-doo/dsl-compiler-client/releases/download/clc-v1.9.6/dsl-clc.jar
  17. RUN curl -sL -O https://github.com/ngs-doo/revenj/releases/download/v1.5.0/http-server.zip
  18. RUN unzip http-server.zip -d /revenj/exe
  19. RUN java -jar dsl-clc.jar \
  20. temp=/revenj/tmp/ \
  21. force \
  22. dsl=/revenj/Revenj.Bench \
  23. manual-json \
  24. compiler=/revenj/dsl-compiler.exe \
  25. revenj.net=/revenj/exe/ServerModel.dll \
  26. no-prompt \
  27. dependencies:revenj.net=/revenj/exe
  28. RUN xbuild /revenj/Revenj.Bench/Revenj.Bench.csproj /t:Rebuild /p:Configuration=Release
  29. RUN mv /revenj/Revenj.Http.exe.config /revenj/exe/Revenj.Http.exe.config
  30. EXPOSE 8080
  31. CMD ["mono", "/revenj/exe/Revenj.Http.exe"]