4.스프링 앱 멀티 스테이지 빌드
도커 이미지 빌드 과정에서 스프링 애플리케이션까지 빌드를 진행하고자 하는 경우 아래와 같이 작성할 수 있음
Dockerfile
FROM eclipse-temurin:11-jdk-alpine as builder
# 빌드는 컴파일러가 필요하기 때문에 jdk로 활용.
# 그렇지 않을 경우, 다음의 에러 발생 -> [ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
WORKDIR /usr/src/app
COPY mvnw .
COPY .mvn .mvn
COPY pom.xml .
COPY src src
RUN ./mvnw package
# issue: https://stackoverflow.com/questions/61226664/build-docker-error-bin-sh-1-mvnw-not-found
# 해결 방법은 sed -i 's/\r$//' mvnw 명령어 실행 후 다시 실행하기
# App
FROM eclipse-temurin:11-jre-alpine
WORKDIR /app
COPY --from=builder /usr/src/app/target/*.jar app.jar
ENTRYPOINT ["java","-jar","/app/app.jar"]Last updated on