개발자
React 프로젝트를 빌드했을 때와 React + Nginx 기반 프로젝트를 Dockerfile로 build시 두 작업의 시간 차이가 많이 나는 상황입니다. docker 이미지 빌드시 npm run build 커맨드 실행에 거의 모든 시간이 소모됩니다. 그래서 react 빌드 시간을 줄이기 위한 esbuild 적용, webpack 커스터마이징 및 dockerfile 최적화를 위한 dockerfile 멀티 스테이지 적용, 이미지 캐시 레이어 사용을 위한 dockerfile 스크립트 수정도 해봤습니다. 그런데도 일반 build(react 프로젝트 build 약 40초)와 docker 이미지 빌드(약 8분) 시간의 차이가 많이 나는데 차이가 많이 나는 원인을 파악하는 방법이 뭐가 있을까요?? dockerfile 스크립트도 참고로 올려봅니다.
답변 2
package-lock.json 파일과 node_modules 디렉토리가 도커 볼륨에 보존 되어 있어야(또는 도커 볼륨에 복사) 프로젝트에서 사용중인 패키지를 매번 재설치하지 않습니다. 도커 빌드할때마다 패키지를 다운로드하고 있어 시간이 많이 소모되는 것으로 추측됩니다.
익명
작성자
2023년 10월 25일
먼저 답변 감사드리며 추가 질문이 있습니다. 7번째 줄인 패키지를 다운로드 하는 과정에서 캐시가 적용되어도 도커 빌드 시간이 오래 걸리던데 이런 경우는 어떤 경우일까요??
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!