【问题标题】:capistrano doesn't use gem path; should I add? best practicescapistrano 不使用 gem 路径;我应该添加吗?最佳实践
【发布时间】:2011-12-05 18:59:37
【问题描述】:

我刚刚将我的第一个 Rails 应用程序部署到一个 linode 实例。我认为/希望我喜欢那里的 90%。

我的一个问题是 gem path 的最佳实践。我正在使用 rvm,我的 gem 环境看起来像这样(完成整个事情):

root@dev:~# gem environment
RubyGems Environment:
  - RUBYGEMS VERSION: 1.8.10
  - RUBY VERSION: 1.9.2 (2011-07-09 patchlevel 290) [x86_64-linux]
  - INSTALLATION DIRECTORY: /usr/local/rvm/gems/ruby-1.9.2-p290
  - RUBY EXECUTABLE: /usr/local/rvm/rubies/ruby-1.9.2-p290/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/local/rvm/gems/ruby-1.9.2-p290/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-linux
  - GEM PATHS:
     - /usr/local/rvm/gems/ruby-1.9.2-p290
     - /usr/local/rvm/gems/ruby-1.9.2-p290@global
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     -  http://rubygems.org/

基于部署,我的 gems 默认存储: /data/sites/jt/apps/test-app/shared/bundle/ruby/1.9.1/gems

这意味着例如 宝石展示导轨

给我一​​个找不到的命令。对最终用户和 capistrano 进行集中处理的最佳位置是什么?处理此问题的最佳做法是什么(我应该只在 rails 命令中使用符号链接)?

顺便说一句,我正在运行 ruby​​ 1.9.2。为什么共享/捆绑告诉我 1.9.1?

感谢任何帮助

【问题讨论】:

  • 你的 Gemfile.lock 说什么?
  • 我也有同样的问题。你已经解决了吗?

标签: ruby-on-rails ruby-on-rails-3.1 rvm capistrano


【解决方案1】:

Capistrano 默认使用 shared/bundle/ruby/1.9.1 与您的 ruby​​ 版本无关。 运行时你能看到你的 gems 安装了吗

$ bundle show rails

$ bundle exec gem list

?

【讨论】:

    猜你喜欢
    • 2011-05-26
    • 2015-09-25
    • 1970-01-01
    • 1970-01-01
    • 2019-10-05
    • 2018-02-28
    • 2021-09-07
    • 2014-03-24
    • 2012-05-12
    相关资源
    最近更新 更多