Docker Compose версия 3: кэшируйте гемы для ускорения установки пакета во время выполнения - PullRequest
0 голосов
/ 22 октября 2018

Прежде чем я начну: Это не пост о ускорении bundle install, который запускается, когда я строю контейнер .

Я создаю приложение Docker, которое должно запускаться bundle install во время выполнения.Для объяснения этого конкретного варианта использования может потребоваться некоторое время, но важный компонент таков: мой работающий контейнер загрузит проекты rails и запустит bundle install.В настоящее время это занимает очень много времени (вероятно, из-за nokogiri).

Есть ли способ построить мой контейнер, чтобы каждый раз, когда мой скрипт выполнял bundle install во время выполнения, он использовал кэшированные гемы?

Я использую: Docker Compose Версия 3 Fargate ECS

1 Ответ

0 голосов
/ 22 октября 2018
  1. Установите для BUNDLE_PATH env var значение vendor/bundle
  2. Подключите том в Fargate к пути пакета

Первый запуск будет медленным, так как он имеетсоздать кеш комплекта, но после этого он должен обновлять гемы только при необходимости.

...