26 lines
602 B
Docker
26 lines
602 B
Docker
# 빌드 스테이지
|
|
FROM gradle:8.5-jdk17 AS build
|
|
|
|
WORKDIR /home/gradle/src
|
|
COPY --chown=gradle:gradle . .
|
|
|
|
# 빌드 인수로 서비스 이름 받기
|
|
ARG SERVICE_NAME
|
|
RUN gradle :${SERVICE_NAME}:build --no-daemon
|
|
|
|
# 실행 스테이지
|
|
FROM eclipse-temurin:17-jre
|
|
|
|
WORKDIR /app
|
|
|
|
# 빌드 인수 다시 선언 (멀티스테이지에서 필요)
|
|
ARG SERVICE_NAME
|
|
|
|
# 해당 서비스의 JAR 파일 복사
|
|
COPY --from=build /home/gradle/src/${SERVICE_NAME}/build/libs/*.jar app.jar
|
|
|
|
# 서비스별 포트 설정 (기본값)
|
|
EXPOSE 8080
|
|
|
|
# 애플리케이션 실행
|
|
ENTRYPOINT ["java", "-jar", "app.jar"] |