FROM gradle:7.4-jdk11-alpine as builder
ARG DEBIAN_FRONTEND=noninteractive
ENV TZ=Asia/Seoul
RUN apk --no-cache add tzdata && \
cp /usr/share/zoneinfo/$TZ /etc/localtime && \
echo $TZ > /etc/timezone
WORKDIR /build
COPY . /build
RUN gradle build
FROM openjdk:11.0-slim
WORKDIR /recode-be
COPY --from=builder /build/build/libs/*.jar .
EXPOSE 8080
CMD ["java", "-jar", "recode-0.0.1-SNAPSHOT.jar", "--spring.config.location=file:/recode-be/resources/"]
<aside> ๐ฅ ์ฌ์ ์์ : gradle์์ ๋น๋ ์ .jar ํ์ผ๊ณผ plain.jar ํ์ผ ๋๊ฐ์ง๊ฐ ์๊ธฐ๋๋ฐ, jarํ์ผ๋ง ์์ผ๋ฉด ๋๋ฏ๋ก plain ๋ฒ์ ์ false ๋ก ๋ณ๊ฒฝํ๊ธฐ โ jar ํ์ผ ํ๋๋ง ๋น๋ ๊ฒฐ๊ณผ๋ฌผ๋ก ์์ฑ๋จ
build.gradle์ ํด๋น ์ฝ๋ ์ถ๊ฐ
jar{
enabled=false
}
</aside>
FROM node:14 as builder
WORKDIR /recode-fe
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
FROM alpine:latest
ARG DEBIAN_FRONTEND=noninteractive
ENV TZ=Asia/Seoul
RUN apk --no-cache add tzdata && \
cp /usr/share/zoneinfo/$TZ /etc/localtime && \
echo $TZ > /etc/timezone
FROM nginx:latest
COPY --from=builder /recode-fe /usr/share/nginx/html/
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]