-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile
More file actions
33 lines (23 loc) · 693 Bytes
/
Dockerfile
File metadata and controls
33 lines (23 loc) · 693 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
FROM eclipse-temurin:17-jdk-jammy AS builder
ARG BUILD_COMMAND="./gradlew clean build"
WORKDIR /opt/app
COPY gradle/ /opt/app/gradle/
COPY gradlew build.gradle ./
COPY settings.gradle ./
RUN chmod +x /opt/app/gradlew
RUN /opt/app/gradlew dependencies
RUN /opt/app/gradlew --refresh-dependencies
COPY ./src ./src
RUN ${BUILD_COMMAND}
FROM eclipse-temurin:17-jre-alpine AS runner
ARG PORT=8080
ENV JAR_FILE="app.jar"
WORKDIR /opt/app
RUN adduser -D user --shell /usr/sbin/nologin \
&& chown -R user:user /opt/app
EXPOSE ${PORT}
ENV PORT=${PORT}
COPY --from=builder /opt/app/build/libs/*.jar /opt/app/${JAR_FILE}
COPY uploads /opt/app/
USER user
CMD java -jar /opt/app/${JAR_FILE}