Merge pull request #882 from basecamp/flavorjones/cache-gems-in-dockerfile

Dockerfile: Use a cache mount for bundled gems
This commit is contained in:
Mike Dalessio
2025-08-11 14:03:26 -04:00
committed by GitHub
+2 -3
View File
@@ -24,9 +24,8 @@ RUN apt-get update -qq && \
# Install application gems
COPY Gemfile Gemfile.lock .ruby-version ./
RUN --mount=type=secret,id=GITHUB_TOKEN \
gem install bundler &&\
BUNDLE_GITHUB__COM="$(cat /run/secrets/GITHUB_TOKEN):x-oauth-basic" bundle install && \
RUN --mount=type=secret,id=GITHUB_TOKEN --mount=type=cache,id=fizzy-permabundle-${RUBY_VERSION},sharing=locked,target=/permabundle \
BUNDLE_PATH=/permabundle BUNDLE_GITHUB__COM="$(cat /run/secrets/GITHUB_TOKEN):x-oauth-basic" bundle install && \
rm -rf ~/.bundle/ "${BUNDLE_PATH}"/ruby/*/cache "${BUNDLE_PATH}"/ruby/*/bundler/gems/*/.git && \
bundle exec bootsnap precompile --gemfile