
FROM node:14
#caching
#cach가 깨졌을때 발생하는 문제점 !
#package.json or codes
WORKDIR /myfolder/
# 어기 폴더에 커서 !
COPY ./package.json /myfolder/
COPY ./package-lock.json /myfolder/
RUN npm install
#node_modules 생성을 위해서
#여기까지 image로 생성 !
COPY . /myfolder/
# myfolder를 만들어서 모든 파일을 복사해줘
CMD npm run dev
docker가 한 번 빌드되면 이름이 지정된 파일을 사용합니다.
신속하게 빌드를 재사용합니다.
우리가 Docker를 사용하는 이유는 어디에서나 동일한 환경에서 서버를 개발하고 실행할 수 있기 때문입니다.
많은 사람들이 코드를 변경하면 Dockerfile의 모든 빌드가 많은 공간과 시간을 차지할 수 있습니다.
웹 개발에서 특히 중요
다음은 package.json이라는 파일입니다.
이 파일은 누군가가 개발한 소스 코드를 npm install을 통해 쉽게 가져와서 설치할 수 있음을 의미합니다.
사용자가 소스 코드를 업그레이드하고 수정하면 이 파일과 소스 코드가 많이 변경됩니다.
이 코드가 변경되면 가상 Docker 머신 환경에 변경 없이 적용되도록 이 섹션도 Dockerfile에 적용되어야 합니다.
찾다
RUN npm install
앞으로
COPY ./package.json /myfolder/
COPY ./package-lock.json /myfolder/
별도의 사본을 만드십시오
이렇게 하면 모든 코드 변경 사항을 즉시 적용할 수 있습니다.