mirror of
https://github.com/tiennm99/store-scraper-bot-java.git
synced 2026-05-14 15:53:30 +00:00
34 lines
1.1 KiB
Docker
34 lines
1.1 KiB
Docker
FROM amazoncorretto:21.0.5-alpine AS deps
|
|
WORKDIR /build
|
|
COPY --chmod=0755 gradlew gradlew
|
|
COPY gradle/ gradle/
|
|
RUN --mount=type=bind,source=build.gradle.kts,target=build.gradle.kts \
|
|
--mount=type=bind,source=settings.gradle.kts,target=settings.gradle.kts \
|
|
--mount=type=cache,target=/root/.gradle \
|
|
./gradlew dependencies -x check -x test --no-daemon --parallel --build-cache
|
|
|
|
FROM deps as package
|
|
WORKDIR /build
|
|
COPY ./src src/
|
|
RUN --mount=type=bind,source=build.gradle.kts,target=build.gradle.kts \
|
|
--mount=type=bind,source=settings.gradle.kts,target=settings.gradle.kts \
|
|
--mount=type=cache,target=/root/.gradle \
|
|
./gradlew build -x check -x test --no-daemon --parallel --build-cache && \
|
|
mv build/libs/*-all.jar build/libs/app.jar || \
|
|
mv build/libs/*.jar build/libs/app.jar
|
|
|
|
FROM amazoncorretto:21.0.5-alpine AS final
|
|
ARG UID=10001
|
|
RUN adduser \
|
|
--disabled-password \
|
|
--gecos "" \
|
|
--home "/nonexistent" \
|
|
--shell "/sbin/nologin" \
|
|
--no-create-home \
|
|
--uid "${UID}" \
|
|
appuser
|
|
USER appuser
|
|
WORKDIR /app
|
|
COPY --from=package /build/build/libs/app.jar app.jar
|
|
ENTRYPOINT ["sh", "-c", "java $JAVA_OPTS -jar app.jar"]
|