Files
invyone/docker/deploy/backend-spring.Dockerfile
gbpark 8c861144dc
Build & Deploy to K8s / build-and-deploy (push) Successful in 6s
서브도메인 배포 작업
2026-04-24 17:49:16 +09:00

32 lines
796 B
Docker

# Spring Boot 백엔드 배포용 Dockerfile
FROM eclipse-temurin:21-jdk-alpine AS build
WORKDIR /app
COPY gradlew ./
COPY gradle ./gradle
RUN chmod +x gradlew
COPY build.gradle settings.gradle ./
RUN ./gradlew dependencies --no-daemon || true
COPY src ./src
RUN ./gradlew bootJar --no-daemon
# Runtime image
FROM eclipse-temurin:21-jre-alpine AS runner
WORKDIR /app
# postgresql16-client: 회사 프로비저닝 시 pg_dump 로 스키마 복사.
# 서버 PG 16.x 와 버전 맞춤 (alpine 기본 postgresql-client 는 18 이라 불일치).
RUN apk add --no-cache curl postgresql16-client
COPY --from=build /app/build/libs/*.jar app.jar
RUN mkdir -p logs uploads data && \
chown -R nobody:nobody /app && \
chmod -R 755 /app
EXPOSE 8081
USER nobody
CMD ["java", "-jar", "app.jar"]