Skip to content

Commit

Permalink
build: переработан Docker-образ
Browse files Browse the repository at this point in the history
  • Loading branch information
Djaler committed Oct 22, 2022
1 parent ecd542c commit dbc0669
Showing 1 changed file with 28 additions and 14 deletions.
42 changes: 28 additions & 14 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,15 +1,29 @@
# syntax = docker/dockerfile:1.3
FROM gradle:jdk11 as builder
RUN mkdir -p out
WORKDIR /home/gradle
COPY --chown=gradle . /home/gradle/
RUN --mount=type=cache,target=/home/gradle/myapp/.gradle \
--mount=type=cache,target=/home/gradle/myapp/build \
gradle bootJar --no-daemon && cp build/libs/*.jar /home/gradle/out

FROM openjdk:11-jre as bin-linux
COPY --from=builder /home/gradle/out/evil-bot-1.0-SNAPSHOT.jar /usr/bin/evil-bot.jar
RUN adduser --system app
USER app
WORKDIR /home/app
CMD ["java", "-jar", "/usr/bin/evil-bot.jar"]
FROM openjdk:11-jdk-slim-bullseye as base

WORKDIR /app

COPY gradle ./gradle
COPY ["build.gradle.kts", "gradle.properties", "gradlew", "settings.gradle", "./"]

RUN --mount=type=cache,target=/root/.gradle \
--mount=type=cache,target=/app/build \
./gradlew build || return 0

COPY src/main ./src/main

FROM base as build

RUN --mount=type=cache,target=/root/.gradle \
--mount=type=cache,target=/app/build \
./gradlew build

RUN jar xf build/libs/*.jar BOOT-INF META-INF

FROM openjdk:11-jre-slim-bullseye

COPY --from=build /app/BOOT-INF/lib ./lib
COPY --from=build /app/META-INF ./META-INF
COPY --from=build /app/BOOT-INF/classes ./

ENTRYPOINT exec java -cp .:./lib/* com.github.djaler.evilbot.ApplicationKt

0 comments on commit dbc0669

Please sign in to comment.