Caching Issues
Explore how to enhance Dockerfile efficiency by resolving common caching issues. Learn to combine apt-get update and install commands and apply Gemfile caching techniques to prevent unnecessary gem reinstalls during Rails app image builds.
Caching issue 1: updating packages
Currently, our Dockerfile has the following two lines:
RUN apt-get update -yqq
RUN apt-get install -yqq --no-install-recommends nodejs
Although this works, there is a hidden problem. Let’s say we realize at a later stage that we need to install an extra package, for example, the Vim editor. We add the vim package to the apt-get install RUN instruction, busting the cache and causing that instruction to rerun:
RUN ...