Pôr uma aplicação Ruby on Rails a correr

O Ruby on Rails não está no instalador de aplicações do cPanel, porque aquele instalador é para aplicações em PHP. O Ruby tem ferramenta própria, no grupo Software do cPanel: o Setup Ruby App.

Essa página cria um ambiente Ruby só seu, escolhe a versão do interpretador e liga a aplicação a um endereço do seu domínio. As versões disponíveis no dia em que este artigo foi escrito vão da 2.2 até à 3.4.

Há uma coisa que tem de saber antes de começar: o comando rails não está instalado no servidor. Isto não é um defeito, é como o Ruby funciona: o Rails é uma biblioteca, e instala-se dentro do ambiente da sua aplicação, não no sistema. Enquanto não o instalar lá, escrever rails na linha de comandos não faz nada, e isso confunde toda a gente na primeira vez.

Criar o ambiente, passo a passo

1 Entre no Meu MozOut em https://www.meu.mozout.co.mz e abra o cPanel do plano.
2 No grupo Software, abra o Setup Ruby App e crie uma aplicação.
3 Escolha a versão do Ruby. Para um projecto novo, escolha das mais recentes da lista: é nelas que as bibliotecas ainda são publicadas.
4 Indique a pasta do código, que deve ficar fora da pasta pública do site, e o endereço onde a aplicação vai responder.
5 Crie. A página passa a mostrar-lhe o comando que activa este ambiente na linha de comandos. Guarde-o.

A partir daqui, a aplicação é servida pelo Passenger, que é o que faz a ponte entre o servidor web e o Ruby. O Passenger procura um ficheiro de arranque na raiz do projecto, o config.ru, que qualquer projecto Rails já traz.

Instalar o Rails e as gemas

1 Confirme que a conta tem acesso SSH. Há contas com shell e contas sem: sem ele, este caminho não dá e o melhor é https://www.meu.mozout.co.mz/submitticket.php.
2 Ligue-se por SSH e corra primeiro o comando de activação que a página do selector lhe deu. Este passo é o que faz toda a diferença: sem ele, está a usar o Ruby do sistema e não o da sua aplicação.
3 Instale o Rails como gema, dentro desse ambiente. Passa a existir o comando rails, mas só enquanto o ambiente estiver activo.
4 Envie o projecto para a pasta que indicou, ou crie um projecto novo ali, e instale as gemas a partir do ficheiro de dependências do projecto.
5 Crie a base de dados no cPanel e aponte a configuração do Rails para ela: criar bases de dados e usar o phpMyAdmin. Depois corra as migrações.
6 Reinicie a aplicação na página do selector. Sem reiniciar, o Passenger continua a servir o que tinha em memória.
Se abrir uma sessão nova de SSH, tem de activar o ambiente outra vez. Metade dos problemas de quem está a começar resume-se a isto: instalou uma gema numa sessão em que se esqueceu de activar, e a aplicação continua a dizer que não a encontra.

Antes de pôr no ar

Assunto O que fazer
Ambiente de produção Ponha a aplicação em modo de produção. Em desenvolvimento, o Rails recarrega código a cada pedido e mostra os erros ao visitante, com o código à volta.
Ficheiros estáticos Compile os recursos antes de pôr no ar. Em produção o Rails espera encontrá-los já preparados, e uma página sem estilos nenhuns é quase sempre este passo esquecido.
Segredos A chave que decifra as credenciais do Rails não vive no repositório. Ponha-a nas variáveis de ambiente da aplicação, na página do selector.
Tarefas periódicas Use as tarefas agendadas do cPanel, chamando o comando dentro do ambiente activado: tarefas agendadas.
Registos Os registos do Rails crescem sem parar e enchem a conta em silêncio. Limpe-os por agenda, ou dá por eles quando o disco encher.
Trabalhadores de fila e processos permanentes não cabem num plano partilhado. A aplicação web arranca a pedido e vive bem; um processo de tarefas de fundo a correr sem parar bate no tecto de processos da conta e é interrompido, sem aviso que se veja. Se a aplicação precisa disso, o sítio dela é um servidor próprio: VPS, Cloud ou Dedicado. Sobre os tectos, veja os limites da conta.

Para o panorama do que corre aqui, veja que tecnologias correm aqui. Se a aplicação é noutra linguagem, veja Django ou Laravel.

Ambiente criado e a aplicação não arranca? Diga-nos o domínio e a pasta, e lemos o registo do Passenger consigo.

Abrir um pedido de suporte

VEJA TAMBÉM

Planos de hospedagem e o que cada um inclui

Servidor VPS

Política de Suporte

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde 600,00 MT/mês

Ver planos
  • 0 Utilizadores acharam útil
Esta resposta foi útil?