2024-04-25 04:05:10 +00:00
|
|
|
# Stage 1: Build the application
|
|
|
|
FROM maven:3.9.6-eclipse-temurin-17-alpine AS builder
|
|
|
|
|
|
|
|
# Set the working directory
|
|
|
|
WORKDIR /home/container
|
|
|
|
|
|
|
|
# Copy the current directory contents into the container at /home/container
|
|
|
|
COPY . .
|
|
|
|
|
|
|
|
# Build the jar
|
|
|
|
RUN mvn package -q -Dmaven.test.skip -DskipTests -T2C
|
|
|
|
|
|
|
|
# Stage 2: Create the final lightweight image
|
2024-07-23 01:02:18 +00:00
|
|
|
FROM eclipse-temurin:17.0.12_7-jre-focal
|
2024-04-25 04:05:10 +00:00
|
|
|
|
|
|
|
# Set the working directory
|
|
|
|
WORKDIR /home/container
|
|
|
|
|
|
|
|
# Copy the built jar file from the builder stage
|
2024-04-25 04:11:48 +00:00
|
|
|
COPY --from=builder /home/container/target/ScoreSaberUtils-Backend.jar .
|
2024-04-25 04:05:10 +00:00
|
|
|
|
2024-04-25 04:11:17 +00:00
|
|
|
# Make port 80 available to the world outside this container
|
|
|
|
EXPOSE 80
|
|
|
|
ENV PORT=80
|
2024-04-25 04:05:10 +00:00
|
|
|
|
|
|
|
# Run the jar file
|
|
|
|
CMD java -jar ScoreSaberUtils-Backend.jar -Djava.awt.headless=true
|