인프런 커뮤니티 질문&답변

김택수님의 프로필 이미지

작성한 질문수

AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)

WORKDIR 이용해서 올바르게 파일 관리하기

dockerfile 내부 폴더 copy

23.12.06 12:51 작성

·

457

0

FROM node:20.10.0-alpine as build

WORKDIR /home/app

COPY package*.json .

RUN npm install

COPY . .

RUN npm run build

FROM node:20.10.0-alpine as production

WORKDIR /home/app

COPY --from=build ./home/app/package.json ./package.json
COPY --from=build ./home/app/package-lock.json ./package-lock.json
COPY --from=build ./home/app/tsconfig.json ./tsconfig.json
COPY --from=build ./home/app/tsconfig.build.json ./tsconfig.build.json
COPY --from=build ./home/app/nest-cli.json ./nest-cli.json
COPY --from=build ./home/app/dist/ ./dist

RUN npm install --only=production

CMD ["npm", "run", "start:dev"]


nestjs 애플리케이션을 docker를 사용하여 배포하기 위해서 Dockerfile을 작성했는데,

 

dev stage에서 build한 build 산출물인 dist 폴더를 복사하려고 하는데, 복사가 되질 않네요,, 어떤 이유일까요?

 

production stage를 주석처리하고, run build까지만 하고 exec 명령어로 해당 컨테이너에 들어가서 확인했을 때는 dist폴더가 존재하는 것을 확인했습니다..!

답변 1

0

김시훈님의 프로필 이미지
김시훈
지식공유자

2023. 12. 07. 15:10

음 dist를 제외한 나머지 파일들은 복사가 잘되는데 dist만 안되고 있는거죠?

COPY --from=build ./home/app/dist/ ./dist

그렇다면 여기서 dist/가 문제인거 같아요. dist/ -> dist로 변경해주세요!