Ruby Version Manager (RVM) – Como instalar? Passo a passo!

De uma forma simples é um “gerenciador de versões” para o Ruby. Com ele podemos criar ambientes isolados para várias versões do ruby em uma mesma máquina… Ou seja podemos ter vários projetos na mesma máquina, cada um com uma versão diferente do ruby sem conflitos.

 

Vamos para um passo a passo simples para a instalação do RVM no ambiente Linux (estamos usando debian):

#instalar a chave pública do autor do RVM
gpg –keyserver hkp://keys.gnupg.net –recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3

#Instalar a última versão estável do RVM com ruby
\curl -sSL https://get.rvm.io | bash -s stable –ruby

* Você precisa ter a biblioteca cURL instalada para executar o comando acima, caso não tenha, basta rodar o comando: sudo apt-get install curl.

#recarregar o rvm
rvm reload

#para instalar o outras versões do ruby use:
rvm install ruby-1.9.3
rvm install ruby-2.1.2

#setar o a versão do ruby default
rvm –default use 2.3.0

#usar uma versão do ruby em um projeto:
#Acesse a pasta de seu projeto
cd /pastadoprj
rvm use 2.3.0

 

Não esqueça de instalar o Bundler para as versões do ruby e de atualizar

# instalar o bundler
gem install bundler

#atualizar as gems
bundle

 

Mais informações em https://rvm.io/rvm/install

 

Host default para servidor Rails 4.2 e 4.3 de 127.0.0.1 para 0.0.0.0

Você gerou seu ambiente ruby em seu vagrant ou outra máquina virtual e mapeou uma porta para acessar em seu ambiente de desenvolvimento e ele simplesmente não funciona? Mas o servidor está rodando certinho… Como solucionar este problema?

Temos 2 soluções práticas:

A primeira solução é ligar o servidor indicando o ip 0.0.0.0:

rails server -b 0.0.0.0

 

A segunda solução (mais prática) é alterar o arquivo /config/root.rb adicionando o seguinte código:

# Rails 4.2/4.3 default_hot
require 'rails/commands/server'
module Rails
  class Server
    new_defaults = Module.new do
      def default_options
        default_host = Rails.env == 'development' ? '0.0.0.0' : '127.0.0.1'
        super.merge( Host: default_host )
      end
    end

    # OBS: Modulo 'prepend' requer no mínimo Ruby 2.0
    prepend new_defaults
  end
end

 

Não deixe de visitar o  guides.rubyonrails.org para se manter atualizado.

 

3.3 Default Host for rails server

Due to a change in Rack, rails server now listens on localhost instead of 0.0.0.0 by default. This should have minimal impact on the standard development workflow as both http://127.0.0.1:3000 and http://localhost:3000 will continue to work as before on your own machine.

However, with this change you will no longer be able to access the Rails server from a different machine, for example if your development environment is in a virtual machine and you would like to access it from the host machine. In such cases, please start the server with rails server -b 0.0.0.0 to restore the old behavior.

If you do this, be sure to configure your firewall properly such that only trusted machines on your network can access your development server.

(fonte: http://guides.rubyonrails.org/4_2_release_notes.html)