Skip to content

Commit 1122dc7

Browse files
committed
build: dockerFile 수정
1 parent 72048dc commit 1122dc7

1 file changed

Lines changed: 33 additions & 2 deletions

File tree

Dockerfile

Lines changed: 33 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,35 @@
1+
# =================
2+
# 1. Build Stage: 소스코드를 빌드하여 .jar 파일을 생성하는 단계
3+
# =================
4+
FROM gradle:8.5.0-jdk17 AS builder
5+
6+
# 작업 디렉토리 설정
7+
WORKDIR /app
8+
9+
# Gradle 관련 파일들을 먼저 복사하여 의존성 캐시를 활용
10+
COPY build.gradle settings.gradle gradlew ./
11+
COPY gradle ./gradle
12+
13+
# 의존성 다운로드 (소스코드 변경 없이 의존성만 변경되었을 때 이 부분만 재실행됨)
14+
RUN ./gradlew dependencies
15+
16+
# 전체 소스코드 복사
17+
COPY src ./src
18+
19+
# Gradle 빌드 실행 (테스트는 제외)
20+
RUN ./gradlew clean build -x test
21+
22+
23+
# =================
24+
# 2. Final Image Stage: 실제 실행될 최종 이미지를 만드는 단계
25+
# =================
126
FROM openjdk:17-jdk-slim
2-
ARG JAR_FILE=build/libs/*.jar
3-
COPY ${JAR_FILE} app.jar
27+
28+
# 작업 디렉토리 설정
29+
WORKDIR /app
30+
31+
# Build Stage에서 생성된 .jar 파일을 최종 이미지로 복사
32+
COPY --from=builder /app/build/libs/*.jar app.jar
33+
34+
# 애플리케이션 실행
435
ENTRYPOINT ["java","-jar","/app.jar"]

0 commit comments

Comments
 (0)