Instalação fácil de uma aplicação Rails – Parte 1
Terça-feira, 19 de agosto de 2008 por AkitaOnRailsComo todos já sabem, agora a Locaweb suporta Ruby on Rails nas hospedagens Linux compartilhada. Recentemente finalizamos a atualização da maioria das máquinas.
Para saber se sua conta tem o novo suporte ou não, basta digitar o comando ‘rails -v’. Se o resultado for 2.1.0 ou superior, é porque sua hospedagem conta com Phusion Passenger. Caso contrário, será necessário abrir um chamado para migrar para as novas máquinas.
Finalmente, o objetivo deste post é fazer com que você, que já tem sua aplicação pronta ou está para começar uma, consiga rapidamente colocá-la em produção. A primeira coisa a fazer é configurar no Painel de Controle da Locaweb o apontamento do seu domínio (ex. railsdemo.tecnologia.ws) para a pasta na sua hospedagem (ex. /public_html/demo). Veja neste outro arquivo para mais detalhes sobre o Painel de Controle.
Feito isso, estou considerando que você não é um usuário já avançado em Rails – por isso esse artigo se chama “Parte 1″. Além disso, estou assumindo que você está utilizando algum ambiente Linux ou Mac. Para Windows depois faço outro post. Pretendo colocar pelo menos mais um ou dois artigos nesta série sobre deployment. O ponto chave se chama Capistrano
Agora, na sua máquina local execute os seguintes passos:
Para começar, instale o capistrano:
sudo gem install capistrano
Agora, instale uma nova gem que eu mesmo acabei de colocar no ar, da seguinte forma:
gem sources -a http://gems.github.com
sudo gem install akitaonrails-locarails
Pronto, agora crie um novo projeto Rails ou então entre no seu projeto já pronto e de lá digite o seguinte comando:
locarails .
Ele irá fazer uma série de perguntas sobre sua hospedagem. No caso: seu usuário da conta no Linux, o dominio que registrou no painel de controle, o diretorio (nome da aplicacao) que tambem apontou no Painel e os dados do MySQL (usuario, senha, servidor, nome do banco). Por enquanto ainda não coloquei suporte ao Postgres, mas isso virá em breve.
Se terminar tudo bem, agora execute este comando:
cap deploy:setup
Isso irá preparar o ambiente na sua conta Linux remota. Provavemente ele pedirá a senha da sua conta Linux, tenha ela em mãos.
Finalmente, basta executar este comando:
cap deploy
E tudo estará no ar no dominio que voce pediu – salvo em caso de ainda ter o tempo de propagação do DNS ou o Apache ainda não ter sido recarregado (ele é recarregado a cada 2 horas).
A gem locarails deve ser instalada somente na sua máquina local!
E toda vez que precisar colocar uma nova versão da sua aplicação em produção, simplesmente execute o comando ‘cap deploy’ e ele fará todo o necessário. O mais interessante: se em algum momento você subir um código com erros na sua hospedagem, seu site sair do ar por causa disso e você não souber como consertar rapidamente, execute este comando:
cap deploy:rollback
E isso voltará seu site exatamente à versão anterior que estava funcionando, em segundos!!
Observação Importante: a gem akitaonrails-locarails ainda é experimental! Somente a utilize se sua aplicação não for crítica! Qualquer feedback, sugestões ou reportar bugs nesta gem em específico, enviem e-mail diretamente para mim em fabio.akita@locaweb.com.br. Este procedimento não tem suporte oficial ainda.
