【问题标题】:installing ruby on EC2 Amazon Unix, using capistrano使用 capistrano 在 EC2 Amazon Unix 上安装 ruby
【发布时间】:2014-04-19 15:07:53
【问题描述】:

我正在尝试使用 capistrano again 安装 ruby​​ 1.9.3-p545。一年前对我有用的东西似乎被 rvm 破坏了:

require "rvm/capistrano"

set :rvm_ruby_string, 'ruby-1.9.3-p327'
set :rvm_type, :user
set :rvm_install_ruby_params, '--with-opensll-dir=$HOME/.rvm/usr'

def rvm_bin
    '$HOME/.rvm/bin/rvm'
end

namespace :deploy do
    task :step do
        rvm.install_rvm
        run "#{rvm_bin} autolibs enable"
        rvm.install_ruby
        run "#{rvm_bin} alias create default #{rvm_ruby_string}"
        run 'echo "source ~/.rvm/environments/default" >> $HOME/.bashrc'
        run 'which ruby && ruby -v'
        run 'gem install --no-ri --no-rdoc rake rack net-ssh bundler'
    end
end

看起来rvm autolibs enable 不再起作用了,因为我收到以下错误消息:

Checking requirements for amazon.
Missing required packages: libyaml-devel libffi-devel readline-devel openssl-devel bison
RVM autolibs is now configured with mode '2' => 'check and stop if missing',
please run `rvm autolibs enable` to let RVM do its job or run and read `rvm autolibs [help]`

我认为肯定还有其他人在使用 capistrano 安装 ruby​​。我尝试从源代码安装 ruby​​,但后来遇到了缺少 yaml 支持的问题。

有什么想法,有什么建议吗?

【问题讨论】:

  • 我认为您正在寻找的现在称为:rvm requirements
  • @IanRodriguez 谢谢伊恩,我明天试试。
  • 如果要从源代码安装 ruby​​,请先安装libyaml
  • 检查丢失的库,被称为丢失
  • @GhostRider 添加缺少的库是rvm autolibs enable 部分的重点。

标签: ruby amazon-ec2 rvm capistrano


【解决方案1】:

所以,这是我没有 rmv 的解决方案。如果您有任何改进、想法或批评,请告诉我:

namespace :deploy do
    RUBY_VERSION = 'ruby-1.9.3-p545'

    task :step do
        # remove default ruby and install dependencies     
        run "#{sudo} yum erase --assumeyes ruby"
        run "#{sudo} yum install --assumeyes readline-devel openssl-devel libyaml-devel"
        # Add the installed ruby to PATH
        run "echo 'export PATH=$PATH:$HOME/bin' >> $HOME/.bashrc"
        run "source $HOME/.bashrc"
        # Build and install
        run "wget http://cache.ruby-lang.org/pub/ruby/1.9/#{RUBY_VERSION}.tar.gz"
        run "tar zxvf #{RUBY_VERSION}.tar.gz"
        run "cd #{RUBY_VERSION} && ./configure --disable-install-doc --enable-shared --prefix=$HOME && make && make install"
        # Check installation and install very basic gems
        run 'which ruby && ruby -v'
        run "gem install --no-ri --no-rdoc rake rack net-ssh bundler"
    end
end

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-14
    • 1970-01-01
    • 1970-01-01
    • 2015-09-28
    • 2014-04-26
    • 2020-11-27
    • 2011-06-20
    • 2013-07-01
    相关资源
    最近更新 更多