recode-BE

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>

recode-FE

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;"]