-
스프링 부트를 이미지로 만들기 위한 도커 파일이다.
프로젝트는 Gradle - Kotlin로 생성했고, JDK는 17을 사용중이다.
아래 예시는 Java 17 기준이며, 자바 버전이 다르다면 두개의 베이스 이미지(FROM)을 변경하면 된다.
FROM eclipse-temurin:17-jdk-alpine AS builder WORKDIR /build COPY gradlew . RUN chmod +x ./gradlew COPY gradle gradle COPY build.gradle.kts settings.gradle.kts ./ RUN ./gradlew dependencies --no-daemon || true COPY src src RUN ./gradlew bootJar -x test --no-daemon RUN java -Djarmode=layertools -jar build/libs/*-SNAPSHOT.jar extract FROM eclipse-temurin:17-jre-alpine WORKDIR /app RUN apk add --no-cache tzdata && \ cp /usr/share/zoneinfo/Asia/Seoul /etc/localtime && \ echo "Asia/Seoul" > /etc/timezone RUN addgroup -S spring && adduser -S spring -G spring USER spring:spring COPY --from=builder /build/dependencies/ ./ COPY --from=builder /build/spring-boot-loader/ ./ COPY --from=builder /build/snapshot-dependencies/ ./ COPY --from=builder /build/application/ ./ EXPOSE 8080 ENTRYPOINT ["java", "org.springframework.boot.loader.launch.JarLauncher"]# JDK 26이라면 FROM eclipse-temurin:26-jdk-alpine AS builder FROM eclipse-temurin:26-jre-alpine'개발 > Spring boot' 카테고리의 다른 글
Keycloak, React, Spring Boot 연동: Notification 서비스 생성 (1) 2026.06.06 Keycloak, React, Spring Boot 연동: user 서비스 생성 (0) 2026.06.06 Keycloak, React, Spring Boot 연동: SCG(Spring Cloud Gateway) 생성하기 (1) 2026.06.06 Keycloak, React, Spring Boot 연동: DB 생성하기 (0) 2026.06.06 Spring boot - Spring Cloud Gateway(SCG) 란? (0) 2026.06.02 댓글
