나의 잡다한 노트 및 메모
멀티 스테이지 빌드에서 --target 옵션 본문
멀티 스테이지 빌드에서는 --target 옵션을 사용하여 원하는 특정 스테이지만 빌드할 수 있습니다.
# 빌드 스테이지
FROM node:14 AS builder
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
# 실행 스테이지
FROM nginx:alpine AS runtime
COPY --from=builder /app/build /usr/share/nginx/html
이런 도커파일이 있다고 하고 stage가 정의돼있을때,
builder와 runtime 두 개의 스테이지가 있다. 만약 빌드 시점에 builder 스테이지만 실행하고 싶다면
docker build --target builder -t myapp-builder . 이 명령어와 같이 --target 옵션을 사용할 수 있다.
이렇게 하면 builder 스테이지만 빌드되고, 그 결과를 이미지로 생성하게 됩니다. 반대로 runtime 스테이지만 빌드하고 싶다면 해당 스테이지 이름을 지정하면 됩니다.
'DevOps > docker' 카테고리의 다른 글
도커파일에서 ARG와 ENV의 차이 (0) | 2025.04.02 |
---|---|
도커 이미지를 이용해 스테이지 분리 (0) | 2025.04.02 |
Docker에 데이터베이스를 넣는 것이 좋은 생각일까요? (0) | 2025.02.14 |
호스트 컴퓨터와 도커 컨테이너간에 통신 과정 (0) | 2025.01.25 |
docker stack이란? (0) | 2025.01.03 |