11FROM codercom/enterprise-base:ubuntu
22
3- ARG DEBIAN_FRONTEND="noninteractive"
4- ARG SDKMAN_SHA512="a8fc6a336d31f2e4980cfe39ee9f11a0f2ee70bc721094b7ea63b953fd1675474765a4e273d6575ea207aa59c15f4fe867e963c0c47580f2131edc2ae8d4fd34"
5-
6- ARG STRING='${SDKMAN_SERVICE}/broker/download/native/install/${SDKMAN_NATIVE_VERSION}/${SDKMAN_PLATFORM}'
7- ARG REPLACE='https://github.com/sdkman/sdkman-cli-native/releases/download/v${SDKMAN_NATIVE_VERSION}/sdkman-cli-native-${SDKMAN_NATIVE_VERSION}-aarch64-unknown-linux-gnu.zip'
8-
9- ENV SDKMAN_DIR="/home/coder/.sdkman" \
10- JAVA_VERSION="21.0.8-librca" \
11- GRADLE_VERSION="8.14.3" \
12- MAVEN_VERSION="3.9.11" \
13- MAVEN_CONFIG="/home/coder/.m2"
14-
3+ # Run everything as root
154USER root
165
17- RUN apt-get update -qq && \
18- apt-get install -qq -y \
19- --no-install-recommends \
20- --no-install-suggests \
21- zip && \
22- rm -rf /var/lib/apt/lists/*
23-
24- USER coder
25-
26- RUN curl -fsSL "https://get.sdkman.io?ci=true" -o /tmp/install_sdkman.sh && \
27- echo "${SDKMAN_SHA512} /tmp/install_sdkman.sh" | sha512sum -c - && \
28- if uname -m | grep -qE '^armv[0-9]l$' ; then \
29- echo "Updating SDKMAN Native CLI download URI" ; \
30- sed -i "s|${STRING}|${REPLACE}|g" /tmp/install_sdkman.sh; \
31- fi && \
32- bash /tmp/install_sdkman.sh && \
33- rm /tmp/install_sdkman.sh && \
34- bash -c "source ${SDKMAN_DIR}/bin/sdkman-init.sh && \
35- sdk install java ${JAVA_VERSION} && \
36- sdk install gradle ${GRADLE_VERSION} && \
37- sdk install maven ${MAVEN_VERSION} && \
38- sdk flush archives && \
39- sdk flush temp"
40-
41- # ## Debugging
42- RUN bash -c "source ${SDKMAN_DIR}/bin/sdkman-init.sh && java --version; mvn -v; gradle -v"
6+ # Install JDK (OpenJDK 8)
7+ RUN DEBIAN_FRONTEND="noninteractive" apt-get update -y && \
8+ apt-get install -y openjdk-11-jdk
9+ ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
10+ ENV PATH=$PATH:$JAVA_HOME/bin
11+
12+ # Install Maven
13+ ARG MAVEN_VERSION=3.9.10
14+ ARG MAVEN_SHA512=4ef617e421695192a3e9a53b3530d803baf31f4269b26f9ab6863452d833da5530a4d04ed08c36490ad0f141b55304bceed58dbf44821153d94ae9abf34d0e1b
15+
16+ ENV MAVEN_HOME=/usr/share/maven
17+ ENV MAVEN_CONFIG="/home/coder/.m2"
18+
19+ RUN mkdir -p $MAVEN_HOME $MAVEN_HOME/ref \
20+ && echo "Downloading maven" \
21+ && curl -fsSL -o /tmp/apache-maven.tar.gz https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.tar.gz \
22+ && echo "Checking downloaded file hash" \
23+ && echo "${MAVEN_SHA512} /tmp/apache-maven.tar.gz" | sha512sum -c - \
24+ && echo "Unzipping maven" \
25+ && tar -xzf /tmp/apache-maven.tar.gz -C $MAVEN_HOME --strip-components=1 \
26+ && echo "Cleaning and setting links" \
27+ && rm -f /tmp/apache-maven.tar.gz \
28+ && ln -s $MAVEN_HOME/bin/mvn /usr/bin/mvn
29+
30+ # Install Gradle
31+ ENV GRADLE_VERSION=6.7
32+ ARG GRADLE_SHA512=d495bc65379d2a854d2cca843bd2eeb94f381e5a7dcae89e6ceb6ef4c5835524932313e7f30d7a875d5330add37a5fe23447dc3b55b4d95dffffa870c0b24493
33+
34+ ENV GRADLE_HOME=/usr/bin/gradle
35+
36+ RUN mkdir -p /usr/share/gradle /usr/share/gradle/ref \
37+ && echo "Downloading gradle" \
38+ && curl -fsSL -o /tmp/gradle.zip https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip \
39+ && echo "Checking downloaded file hash" \
40+ && echo "${GRADLE_SHA512} /tmp/gradle.zip" | sha512sum -c - \
41+ && echo "Unziping gradle" \
42+ && unzip -d /usr/share/gradle /tmp/gradle.zip \
43+ && echo "Cleaning and setting links" \
44+ && rm -f /tmp/gradle.zip \
45+ && ln -s /usr/share/gradle/gradle-${GRADLE_VERSION} /usr/bin/gradle
46+
47+ ENV PATH=$PATH:$GRADLE_HOME/bin
48+
49+ # Set back to coder user
50+ USER coder
0 commit comments