'Вы должны использовать Bundler 2 или выше с этим файлом блокировки.'даже с установленным Bundler 2.0.2 - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь Dockerize мое приложение Rails и постоянно получаю это предупреждение при запуске docker build -t tml_portal:

Sending build context to Docker daemon  355.1MB
Step 1/1 : FROM rails:onbuild
# Executing 4 build triggers
 ---> Using cache
 ---> Using cache
 ---> Running in 641c1404bf87
You must use Bundler 2 or greater with this lockfile.
The command '/bin/sh -c bundle install' returned a non-zero code: 20

Я пробовал bundler update --system, gem uninstall bundler, gem install bundler 2.0.2 и т. Д. В основном каждое предложение в Интернете. Я скажу, что у меня иногда возникает проблема: когда я переключаю каталоги, RVM переключается на ruby 2.3.3 и мне приходится rvm use 2.6.5. Мой системный рубин отличается от локального. Не уверен, что это как-то связано с этим, но я просто не могу найти решение. Я также удостоверился, что удалил кэш сборки Docker.

1 Ответ

0 голосов
/ 31 октября 2019

В самом низу вашего Gemfile.lock должно быть указано, какая версия Bundler использовалась:

# Gemfile.lock

BUNDLED WITH
   2.0.2

Вы также можете проверить, какую версию Bundler вы сейчас используете в консоли, с помощью:

bundler -v

Убедитесь, что у обоих есть версия, которую вы ищете. Если нет, полностью удалите Gemfile.lock и - если у вас установлена ​​обновленная версия - он должен повторно объединиться с обновленной версией.

...