Using the build cache
docker build 명령어로 docker를 빌드하면 docker는 Dockerfile에 있는 각 지시어를 실행하며 레이어를 생성한다. 이때 이전에 실행했던 유사한 지시어의 cached result를 사용하여 빌드 프로세스를 빠르고 효율적이게 진행한다.
- cache invalidation 상황
RUN의 명령어의 내용이 변경되면 cache를 무효화한다.COPY,ADD와 관련된 file의 내용, 권한이 변경되면 cache를 무효화한다.- 하나의 layer가 무효화 되면, 그 이후 레이어들도 또한 무효화 된다.
- 불필요하게 cache misses가 일어나지 않도록 하여, build 성능을 올릴 수 있다.
.dockerignore를 통해서 필요 없는 file을COPY나ADD이 무시하도록 할 수 있다. ex) .git