From 7da57d922f9521c9905ef64c2f6e0d143e24fc32 Mon Sep 17 00:00:00 2001 From: junseo_lee <dlwnstj99@ajou.ac.kr> Date: Fri, 21 Jul 2023 15:26:41 +0900 Subject: [PATCH] [Modify] maven project build --- Dockerfile | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7c4174f..25d4798 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,11 +1,27 @@ -# Base image: OpenJDK 17 +# Base image: OpenJDK 17 with Maven +FROM maven:3.8.4-openjdk-17-slim AS build + +# 작업 디렉토리 설정 +WORKDIR /app + +# 소스 코드 복사 +COPY pom.xml . +COPY src ./src + +# Maven을 사용하여 프로젝트 빌드 +RUN mvn clean package + +# 빌드가 완료된 JAR 파일을 target 폴더로 이동 +RUN mv target/myspringweb-0.0.1-SNAPSHOT.jar /app/target/app.jar + +# 실제 실행할 이미지 생성 FROM openjdk:17 -# 앱을 실행시키기 위한 폴더 생성 +# 작업 디렉토리 설정 WORKDIR /app -# 호스트의 'target' 폴더에 있는 JAR 파일을 컨테이너의 '/app' 폴더로 복사 -COPY target/myspringweb-0.0.1-SNAPSHOT.jar app.jar +# 빌드된 JAR 파일을 이미지로 복사 +COPY --from=build /app/target/app.jar . # 컨테이너의 8098 포트를 호스트의 8098 포트와 연결 EXPOSE 8098 -- GitLab