2021년 3월 9일 화요일

Docker build시에 특정 라인 캐싱 제거하기.

 Docker 빌드 시에 특정 라인 캐싱 제거하기.


Docker compose를 사용해서 여러개의 container를 동일한 Dockerfile 파일을 사용해서 만들때, ARGS에 따라서 다르게 빌드 되어야하는 경우, 캐싱처리로 인해서 올바르게 동작하지 않는 이슈가 발생하였습니다.
그래서 이 이슈를 해결 하기 위해 사용했던 방법에 대해서 적을까 합니다.

--no-cache Argument 추가하기.

docker build시에 --no-cache 추가하면 기존에 캐시 되는 Docker image를 제거 할수 있음.

CACHEBUST Argument 사용하기.

no-cache의 경우는 모든 Docker image cache를 제거 해서 파일은 업데이트 되는데 필요 없는 라인까지 업데이트 되는 경우가 발생. 
CACHEBUST를 사용할 경우 해당 라인 밑에 있는 docker command에 대해서 캐시 처리 없이 항상 실행 됨.


저의 경우 barbel-node 를 사용하는데 그때 CACHEBUST를 추가해서 항상 코드가 업데이트 되도록 세팅함.


댓글 없음:

댓글 쓰기