Files
siren/Dockerfile

49 lines
1.4 KiB
Docker

ARG JAVA_VERSION=17
FROM alpine:3.16 AS build
ARG MAVEN_VERSION=3.8.7
ARG MAVEN_BASE_URL=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries
ARG USER_HOME_DIR="/root"
ARG JAVA_VERSION
RUN apk --no-cache add sudo curl tar bash procps \
&& apk --no-cache add openjdk${JAVA_VERSION}
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 alpine:3.16
ARG JAVA_VERSION
ENV VERSION ${VER}
ENV JAVA_VER ${JAVA_VERSION}
ENV JAVA_HOME /usr/lib/jvm/java-${JAVA_VERSION}-openjdk
RUN apk --no-cache add sudo bash \
&& apk --no-cache add openjdk${JAVA_VERSION}
WORKDIR /app
COPY --from=build /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"]