Add Docker support and environment configuration

Introduced Dockerfile, .dockerignore, and example environment file for containerization. Added compose.yml for Docker Compose setup and renamed docker-compose.dev.yml to compose.dev.yml. Updated build.gradle.kts for Java 21 and shadow plugin, and improved .gitignore and .gitattributes. Refactored Config.java to reorder ENV initialization.
This commit is contained in:
2025-11-04 21:18:28 +07:00
parent b3cc35b4c2
commit 4bf94aaad4
9 changed files with 136 additions and 8 deletions
+19
View File
@@ -0,0 +1,19 @@
FROM amazoncorretto:21.0.5 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=cache,target=/root/.gradle \
./gradlew dependencies --no-daemon
FROM deps AS package
WORKDIR /build
COPY ./src src/
RUN --mount=type=bind,source=build.gradle.kts,target=build.gradle.kts \
--mount=type=cache,target=/root/.gradle \
./gradlew shadowJar -x test --no-daemon
RUN cp build/libs/*-all.jar app.jar
FROM amazoncorretto:21.0.5 AS final
COPY --from=package build/app.jar app.jar
ENTRYPOINT [ "sh", "-c", "java ${JAVA_OPTS} -jar app.jar" ]