我想使用我上传的Gemfile中指定的gem。但是,我一直在
/usr/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- capybara (LoadError) from /usr/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' from app.rb:3:in `<main>'
似乎代码无法找到所需的宝石。这是我的.worker
文件:
runtime "ruby"
stack "ruby-2.1"
exec "app.rb"
gemfile "Gemfile"
full_remote_build true
我的Gemfile
:
source "https://rubygems.org"
gem "capybara"
gem "capybara-webkit"
我使用此命令上传了我的作品:
zip -r my_work.zip . ; iron worker upload --zip my_work.zip --name my_work iron/ruby ruby app.rb ; iron worker queue --wait my_work
提前致谢。
答案 0 :(得分:2)
这里有几件事情:
1)您正在使用带有.worker文件的full_remote_build,但随后上传了该zip文件。这两件事不是一起出现的,而是一件事。
2)确保您正在销售宝石,以便在拉链时包含宝石。供应商:docker run --rm -v "$PWD":/worker -w /worker iron/ruby:dev bundle install --standalone --clean
。然后在脚本的顶部添加:require_relative 'bundle/bundler/setup'
。
有关详细信息,请参阅此处的文档:https://github.com/iron-io/dockerworker/tree/master/ruby