Files
siren/Dockerfile
2023-01-19 17:18:34 +00:00

58 lines
1.5 KiB
Docker

ARG JAVA_VERSION=17
ARG MAVEN_VERSION=3.8.7
FROM alpine:3.16 as builder
ARG JAVA_VERSION
RUN apk --no-cache add sudo bash \
&& apk --no-cache add openjdk${JAVA_VERSION}
##########
# BUILD 1
##########
FROM builder AS build1
ARG MAVEN_VERSION
ARG JAVA_VERSION
ARG MAVEN_BASE_URL=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries
ARG USER_HOME_DIR="/root"
RUN apk --no-cache add curl tar procps
RUN mkdir -p /usr/share/maven /usr/share/maven/ref \
&& echo "Downloading maven" \
&& curl -fsSL -o /tmp/apache-maven.tar.gz ${MAVEN_BASE_URL}/apache-maven-${MAVEN_VERSION}-bin.tar.gz \
&& echo "Unzipping maven" \
&& tar -xzf /tmp/apache-maven.tar.gz -C /usr/share/maven --strip-components=1 \
&& echo "Cleaning and setting links" \
&& rm -f /tmp/apache-maven.tar.gz \
&& ln -s /usr/share/maven/bin/mvn /usr/bin/mvn
ENV MAVEN_HOME /usr/share/maven
ENV MAVEN_CONFIG "$USER_HOME_DIR/.m2"
ENV JAVA_VER ${JAVA_VERSION}
ENV JAVA_HOME /usr/lib/jvm/java-${JAVA_VERSION}-openjdk
WORKDIR /app
COPY ./src ./src
COPY ./pom.xml ./pom.xml
RUN mvn -f ./pom.xml clean package
FROM builder as build2
ARG JAVA_VERSION
ENV JAVA_VER ${JAVA_VERSION}
ENV JAVA_HOME /usr/lib/jvm/java-${JAVA_VERSION}-openjdk
RUN ln -s /lib/libc.musl-aarch64.so.1 /lib/ld-linux-aarch64.so.1
WORKDIR /app
COPY --from=build1 /app/target/siren-*-All.jar /usr/local/lib/siren.jar
#COPY ./start.sh ./start.sh
#RUN chmod +x ./start.sh
ENTRYPOINT ["java", "-jar", "/usr/local/lib/siren.jar"]
#ENTRYPOINT ["/bin/sh", "-c", "./start.sh"]