我正在尝试对Rails应用进行Docker化,并在运行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
。我的系统ruby与本地系统不同。不知道这是否与它有关,但我只是想不出一个解决方案。我还确保删除Docker构建缓存。
答案 0 :(得分:0)
在您的Gemfile.lock
的最底部,应该说出使用了哪个版本的Bundler:
# Gemfile.lock
BUNDLED WITH
2.0.2
您还可以使用以下命令检查控制台中当前使用的Bundler版本:
bundler -v
确保两者都具有您要查找的版本。如果没有,请完全删除Gemfile.lock
,并且-如果您已安装更新的版本-应该将其与更新的版本重新捆绑在一起。