2

Rodando uma aplicação em Rails 3 na Dreamhost

Outro post rápido: para fazer sua aplicação em Rails 3 funcionar em uma hospedagem compartilhada na Dreamhost use o RVM para garantir que suas gems ficarão “em paz” no diretório do seu usuário (caso contrário o Passenger emitirá um erro de acesso proibido ao diretório /root/.gems) e depois configure sua aplicação para dizer onde estão suas gems. Eu explico:

1) Acesse sua hospedagem na Dreamhost via SSH.
2) Instale o RVM como um usuário (siga o passo-a-passo), e não como root.
3) Configure sua aplicação para que o Passenger saiba onde procurar suas gems, incluindo os seguintes comandos no início do arquivo config.ru:

ENV['GEM_HOME'] = '/caminho/para/suas/gems'
require 'rubygems'
Gem.clear_paths

Onde ‘/caminho/para/suas/gems’ deve ser subsituído pelo GEM_HOME usando o RVM. Por exemplo, se você instalou o ruby 1.8.7 (usando rvm install 1.8.7) e um gemset chamado meugemset, o caminho para suas gems vai se parecer um pouco com isto: /home/USUARIO/.rvm/gems/ruby-1.8.7-p330@meugemset

Edit @ 6/mar/2010: Ontem a Dreamhost anunciou que agora já suporta Rails 3, e a versão corrente nos servidores é a 3.0.3.

Comments 2

  1. Segui tua dica e deu tudo certo, porém , para eu poder ver a aplicação rodando tenho de rodar $rails s. Tem alguma maneira do Passenger já interpretar isso sem que eu tenha de startar servidor?

    1. Antes de executar os passos deste post você tem que ter configurado o domínio como uma aplicação Rails, aí o Passenger vai saber que ele terá de executar sua aplicação. Se você deixar a hospedagem do domínio configurada pra roda PHP, o Passenger não vai nem “olhar” pra sua aplicação.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *