* run with unprivileged user and bump java version to 8.0.292.hs * revert to gradle 6.4
This commit is contained in:
@@ -1,30 +1,37 @@
|
||||
FROM ubuntu:20.04
|
||||
|
||||
ARG SDKMAN_JAVA_INSTALLATION=8.0.275.hs-adpt
|
||||
ARG SDKMAN_JAVA_INSTALLATION=8.0.292.hs-adpt
|
||||
|
||||
LABEL Author Marcin Grzejszczak <mgrzejszczak@pivotal.io>
|
||||
LABEL Author="Marcin Grzejszczak <mgrzejszczak@pivotal.io>"
|
||||
LABEL Author="Bastian Doetsch <bdoetsch@vmware.com>"
|
||||
|
||||
RUN apt-get update && apt-get install -y curl \
|
||||
unzip \
|
||||
zip \
|
||||
&& apt-get clean
|
||||
|
||||
RUN useradd -u1000 -m scc
|
||||
|
||||
# Install sdkman and java
|
||||
RUN curl -s https://get.sdkman.io/ | bash
|
||||
COPY sdkman.config /.sdkman/etc/config
|
||||
COPY sdkman/ /usr/local/bin/
|
||||
RUN /bin/bash -c "chmod +x /usr/local/bin/sdkman-exec.sh && chmod +x /usr/local/bin/sdkman-wrapper.sh && chmod +x /root/.sdkman/bin/sdkman-init.sh"
|
||||
RUN /bin/bash -c "source /root/.sdkman/bin/sdkman-init.sh"
|
||||
RUN sdkman-wrapper.sh install java "${SDKMAN_JAVA_INSTALLATION}"
|
||||
ENV JAVA_HOME /root/.sdkman/candidates/java/current/
|
||||
RUN chmod +x /usr/local/bin/sdkman-wrapper.sh
|
||||
|
||||
USER scc
|
||||
RUN curl -s https://get.sdkman.io/ | bash
|
||||
COPY --chown=scc sdkman.config /home/scc/.sdkman/etc/config
|
||||
RUN bash -c "source /home/scc/.sdkman/bin/sdkman-init.sh"
|
||||
RUN bash -c "sdkman-wrapper.sh install java ${SDKMAN_JAVA_INSTALLATION}"
|
||||
ENV JAVA_HOME /home/scc/.sdkman/candidates/java/current/
|
||||
ENV PATH "${PATH}:${JAVA_HOME}/bin"
|
||||
|
||||
# Spring Cloud Contract
|
||||
COPY project /spring-cloud-contract/
|
||||
WORKDIR /spring-cloud-contract/
|
||||
COPY --chown=scc project /home/scc/spring-cloud-contract/
|
||||
WORKDIR /home/scc/spring-cloud-contract/
|
||||
|
||||
# Let's copy the downloaded deps to .m2 and the gradle cache
|
||||
COPY target/maven_dependencies /root/.m2/repository/
|
||||
COPY target/gradle_dependencies /root/.gradle/
|
||||
COPY --chown=scc target/maven_dependencies /home/scc/.m2/repository/
|
||||
COPY --chown=scc target/gradle_dependencies /home/scc/.gradle/
|
||||
|
||||
# Let's download gradle wrapper if for some reason it hasn't been downloaded
|
||||
RUN ./gradlew clean resolveDependencies build --stacktrace -x copyOutput || echo "Expected to fail"
|
||||
CMD ["./build.sh"]
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<properties>
|
||||
<dependency-management-plugin.version>1.0.8.RELEASE</dependency-management-plugin.version>
|
||||
<plexus-archiver.version>4.2.5</plexus-archiver.version>
|
||||
<sdkman-java-installation.version>8.0.275.hs-adpt</sdkman-java-installation.version>
|
||||
<sdkman-java-installation.version>8.0.292.hs-adpt</sdkman-java-installation.version>
|
||||
</properties>
|
||||
|
||||
<parent>
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# A quick wrapper to source the gvm env and run a command
|
||||
# This is used to run sdkman in Dockerfile RUN commands
|
||||
# since the RUN commands does not use interactive shells
|
||||
|
||||
[[ -s "/root/.sdkman/bin/sdkman-init.sh" ]] && source "/root/.sdkman/bin/sdkman-init.sh" && exec "$@"
|
||||
@@ -4,4 +4,4 @@
|
||||
# This is used to run gvm in Dockerfile RUN commands
|
||||
# since the RUN commands does not use interactive shells
|
||||
|
||||
[[ -s "/root/.sdkman/bin/sdkman-init.sh" ]] && source "/root/.sdkman/bin/sdkman-init.sh" && sdk $@
|
||||
[[ -s "/home/scc/.sdkman/bin/sdkman-init.sh" ]] && source "/home/scc/.sdkman/bin/sdkman-init.sh" && sdk $@
|
||||
|
||||
@@ -1,32 +1,39 @@
|
||||
FROM ubuntu:20.04
|
||||
|
||||
ARG SDKMAN_JAVA_INSTALLATION=8.0.275.hs-adpt
|
||||
ARG SDKMAN_JAVA_INSTALLATION=8.0.292.hs-adpt
|
||||
|
||||
MAINTAINER Marcin Grzejszczak <mgrzejszczak@pivotal.io>
|
||||
LABEL Author="Marcin Grzejszczak <mgrzejszczak@pivotal.io>"
|
||||
LABEL Author="Bastian Doetsch <bdoetsch@vmware.com>"
|
||||
|
||||
RUN apt-get update && apt-get install -y curl \
|
||||
unzip \
|
||||
zip \
|
||||
&& apt-get clean
|
||||
|
||||
RUN useradd -u1000 -m scc
|
||||
|
||||
# Install sdkman and java
|
||||
RUN curl -s https://get.sdkman.io/ | bash
|
||||
COPY sdkman.config /.sdkman/etc/config
|
||||
COPY sdkman/ /usr/local/bin/
|
||||
RUN /bin/bash -c "chmod +x /usr/local/bin/sdkman-exec.sh && chmod +x /usr/local/bin/sdkman-wrapper.sh && chmod +x /root/.sdkman/bin/sdkman-init.sh"
|
||||
RUN /bin/bash -c "source /root/.sdkman/bin/sdkman-init.sh"
|
||||
RUN sdkman-wrapper.sh install java "${SDKMAN_JAVA_INSTALLATION}"
|
||||
ENV JAVA_HOME /root/.sdkman/candidates/java/current/
|
||||
RUN chmod +x /usr/local/bin/sdkman-wrapper.sh
|
||||
|
||||
USER scc
|
||||
WORKDIR /home/scc
|
||||
|
||||
RUN curl -s https://get.sdkman.io/ | bash
|
||||
COPY --chown=scc sdkman.config /home/scc/.sdkman/etc/config
|
||||
RUN bash -c "source /home/scc/.sdkman/bin/sdkman-init.sh"
|
||||
RUN bash -c "sdkman-wrapper.sh install java ${SDKMAN_JAVA_INSTALLATION}"
|
||||
ENV JAVA_HOME /home/scc/.sdkman/candidates/java/current/
|
||||
ENV PATH "${PATH}:${JAVA_HOME}/bin"
|
||||
|
||||
# Spring Cloud Contract
|
||||
ENV SERVER_PORT 8750
|
||||
VOLUME /tmp
|
||||
COPY target/maven_dependencies /root/.m2/repository/
|
||||
ADD target/libs/stub-runner-boot.jar stub-runner-boot.jar
|
||||
COPY --chown=scc target/maven_dependencies /home/scc/.m2/repository/
|
||||
COPY --chown=scc target/libs/stub-runner-boot.jar stub-runner-boot.jar
|
||||
RUN echo "Fetching dependencies, please wait..."
|
||||
RUN java -Dthin.dryrun=true -jar stub-runner-boot.jar
|
||||
RUN java -Dthin.dryrun=true -jar stub-runner-boot.jar --thin.profile=rabbit
|
||||
RUN java -Dthin.dryrun=true -jar stub-runner-boot.jar --thin.profile=kafka
|
||||
COPY run.sh run.sh
|
||||
COPY --chown=scc run.sh run.sh
|
||||
ENTRYPOINT ["./run.sh"]
|
||||
|
||||
@@ -15,4 +15,4 @@ if [[ "${MESSAGING_TYPE}" != "" ]]; then
|
||||
fi
|
||||
|
||||
echo "Please wait for the dependencies to be downloaded..."
|
||||
java -Djava.security.egd=file:/dev/./urandom -jar /stub-runner-boot.jar ${ADDITIONAL_OPTS}
|
||||
java -Djava.security.egd=file:/dev/./urandom -jar /home/scc/stub-runner-boot.jar ${ADDITIONAL_OPTS}
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# A quick wrapper to source the gvm env and run a command
|
||||
# This is used to run sdkman in Dockerfile RUN commands
|
||||
# since the RUN commands does not use interactive shells
|
||||
|
||||
[[ -s "/root/.sdkman/bin/sdkman-init.sh" ]] && source "/root/.sdkman/bin/sdkman-init.sh" && exec "$@"
|
||||
@@ -4,4 +4,4 @@
|
||||
# This is used to run gvm in Dockerfile RUN commands
|
||||
# since the RUN commands does not use interactive shells
|
||||
|
||||
[[ -s "/root/.sdkman/bin/sdkman-init.sh" ]] && source "/root/.sdkman/bin/sdkman-init.sh" && sdk $@
|
||||
[[ -s "/home/scc/.sdkman/bin/sdkman-init.sh" ]] && source "/home/scc/.sdkman/bin/sdkman-init.sh" && sdk $@
|
||||
|
||||
Reference in New Issue
Block a user