如何在iron.io worker中使用Gemfile

时间:2016-01-13 14:24:41

标签: ruby capybara capybara-webkit iron.io

我想使用我上传的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

提前致谢。

1 个答案:

答案 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