-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathDockerfile
More file actions
39 lines (38 loc) · 1.46 KB
/
Copy pathDockerfile
File metadata and controls
39 lines (38 loc) · 1.46 KB
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
34
35
36
37
38
39
FROM --platform=$BUILDPLATFORM eclipse-temurin:25-jdk-alpine AS builder
ARG APP_VERSION=0.1.0
ARG GITHUB_SHA=unknown
ARG BUILD_TIME=unknown
ARG GRADLE_MAX_WORKERS=32
ENV GITHUB_SHA=$GITHUB_SHA
ENV BUILD_TIME=$BUILD_TIME
WORKDIR /app
COPY gradlew ./
COPY gradle/ ./gradle/
RUN ./gradlew --version --no-daemon -q
COPY build.gradle.kts gradle.properties settings.gradle.kts* ./
COPY src/ ./src/
COPY server-admin/ ./server-admin/
COPY server-auth/ ./server-auth/
COPY server-cache/ ./server-cache/
COPY server-core/ ./server-core/
COPY server-db/ ./server-db/
COPY server-domain/ ./server-domain/
COPY server-downloader/ ./server-downloader/
COPY server-http/ ./server-http/
COPY server-playback/ ./server-playback/
COPY server-portability/ ./server-portability/
COPY server-sabr/ ./server-sabr/
COPY server-test-support/ ./server-test-support/
COPY server-services/ ./server-services/
COPY server-token-gateway/ ./server-token-gateway/
RUN ./gradlew dependencies --no-daemon --parallel --max-workers="$GRADLE_MAX_WORKERS" -q || true
RUN ./gradlew shadowJar --no-daemon --parallel --max-workers="$GRADLE_MAX_WORKERS" -q -PappVersion="$APP_VERSION"
FROM eclipse-temurin:25-jre-alpine AS runner
RUN apk upgrade --no-cache \
&& addgroup -S typetype \
&& adduser -S typetype -G typetype
WORKDIR /app
COPY --from=builder /app/build/libs/typetype-server-all.jar app.jar
USER typetype
EXPOSE 8080
ENTRYPOINT ["java", "-XX:+UseContainerSupport", "-XX:MaxRAMPercentage=75.0", "-jar", "app.jar"]