diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index f3617e3..45c13fe 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,7 +1,13 @@ ## ๐Ÿ‹ Dockerfile ๋‚ด์šฉ ```dockerfile -# ํ•ด๋‹น ์ฃผ์„์„ ์ง€์šฐ๊ณ  Dockerfile ๋‚ด์šฉ์„ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”. +FROM gradle:8-jdk-alpine AS builder +WORKDIR /app +COPY --chown=gradle:gradle . . +RUN gradle build --no-daemon +FROM openjdk:17-jdk-slim +WORKDIR /app +COPY --from=builder /app/build/libs/*.jar app.jar +CMD ["java", "-jar", "app.jar"] ``` ## ๐Ÿ“ท API ์š”์ฒญ ๊ฒฐ๊ณผ ์Šคํฌ๋ฆฐ์ƒท -> API ์š”์ฒญ ๊ฒฐ๊ณผ์˜ ์Šคํฌ๋ฆฐ์ƒท๋“ค์„ ์ฒจ๋ถ€ํ•˜์—ฌ์ฃผ์„ธ์š”. \ No newline at end of file diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 68d6739..3f07adc 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -24,15 +24,18 @@ jobs: - name: โŒ› Wait for Services run: sleep 30 - name: ๐Ÿ‹ Run Task.2-7 Server Container - run: docker run --name task27-server --network=compose_default -d -p 8080:8080 task27:test + run: docker run --name task27-server --network=compose_default -d -p 8080:8080 -e APP_JAR=/app/task27-0.0.1-SNAPSHOT.jar task27:test - name: โŒ› Wait for Application run: sleep 45 - name: ๐Ÿ“ƒ Log Trace - run: docker logs task27-server + run: | + echo "๐Ÿ“ข Tracking logs for task27-server..." + timeout 60s docker logs -f task27-server + - name: ๐Ÿงช Test Application run: | RESPONSE=$(curl -s "http://localhost:8080/health/check") if [ "$RESPONSE" != "OK" ]; then echo "๐Ÿ’ฃ Health Check Failed" exit 1 - fi \ No newline at end of file + fi diff --git a/Dockerfile b/Dockerfile index 7df80f6..d9e7dbe 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,2 +1,9 @@ -# ์•„๋ž˜ ENV ๋ช…๋ น์–ด๋ฅผ ์ œ์™ธํ•˜๊ณ  ์ฃผ์„์„ ์ œ๊ฑฐํ•œ ํ›„ Dockerfile๋ฅผ ์ž‘์„ฑํ•˜์„ธ์š”. -ENV SPRING_PROFILES_ACTIVE=test \ No newline at end of file +FROM gradle:8-jdk-alpine AS builder +WORKDIR /app +COPY --chown=gradle:gradle . . +RUN gradle build --no-daemon +FROM openjdk:17-jdk-slim AS runtime +WORKDIR /app +COPY --from=builder /app/build/libs/*.jar app.jar +ENV APP_JAR=app.jar +CMD ["java", "-jar", "$APP_JAR"] \ No newline at end of file diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 6442bba..b2f6de2 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -2,4 +2,4 @@ spring: application: name: task27 profiles: - active: ${SPRING_PROFILES_ACTIVE:dev} \ No newline at end of file + active: ${SPRING_PROFILES_ACTIVE:dev}