【问题标题】:Setup Rails 3 App on Production Server (no compiler/root access)在生产服务器上设置 Rails 3 应用程序(无编译器/root 访问权限)
【发布时间】:2011-09-01 21:57:55
【问题描述】:

我正在尝试在运行 Mac OS X Server 10.6.6 的生产机器(无编译器,无 root 访问权限)上设置一个 rails 应用程序。它有 ruby​​ 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0] 和 gem 1.3.5。但是我需要安装更新版本的 ruby​​gems,因为我需要 Rails 3 和 Bundler。我无法更新系统 ruby​​ 或 ruby​​gems。

我尝试安装本地版本的 ruby​​gems (v 1.7.2),但“gem -v”仍然返回 1.3.5。 'which gem' 肯定指向我本地的 ruby​​gems 二进制文件。我做错了什么?

这是“gem env”的输出:

RubyGems 环境:
- RUBYGEMS 版本:1.3.5
- 红宝石版本:1.8.7(2009-06-12 补丁级别 174)[universal-darwin10.0]
- 安装目录:/.gem/ruby/1.8/gems
- RUBY 可执行文件:/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
- 可执行目录:/.gem/ruby/1.8/gems/bin
- RUBYGEMS 平台:
- 红宝石
- 通用达尔文 10
- 宝石路径:
- /.gem/ruby/1.8/gems
- /.gem/ruby/1.8
- /图书馆/Ruby/Gems/1.8
- /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
- 宝石配置:
- :update_sources => 真
- :verbose => 真
- :benchmark => 假
- :backtrace => 假
- :bulk_threshold => 1000
- 远程资源:
- http://gems.rubyforge.org/

补充: 当我运行gem update --system 时,出现以下错误:

Updating RubyGems  
Updating rubygems-update  
Successfully installed rubygems-update-1.8.5  
Updating RubyGems to 1.8.5  
Installing RubyGems 1.8.5  
ERROR:  While executing gem ... (Errno::EACCES)  
    Permission denied - /Library/Ruby/Site/1.8/gauntlet_rubygems.rb  
RubyGems system software update

它仍然报告运行版本 1.3.5

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 macos rubygems


    【解决方案1】:

    您是否更新了 PATH 以首选本地 gem 1.7.2 二进制文件而不是默认值?例如。如果您在 ~/bin 中安装了 1.7.2 二进制文件,您可能希望将 .bash_profile 更新为 export PATH="~/bin:$PATH"

    运行which gem 以找出您在运行gem env 时调用的gem 二进制文件。

    【讨论】:

    • 是的,我的路径设置正确,'which gem' 返回本地 gem 安装的路径。
    【解决方案2】:

    你能在服务器上安装 rvm 吗?如果是这样,那么您可以在自己的特定于应用程序的 rvm 中运行,并在其中包含您想要的任何 gem/rubygems。

    【讨论】:

    • 如果他没有编译器,他将无法为 rvm 编译任何 rubies。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-16
    • 2018-10-04
    • 1970-01-01
    • 2011-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多