O processo de deploy para um aplicativo Node.js

De Wiki Integrator do Brasil
Ir para: navegação, pesquisa
Wiki-node-next-puppeteer.jpg

Índice

Antes de começar

As orientações contidas neste tutorial exigem o Integrator Node.js. Caso seu plano não possua suporte a Node.js, converse com o nosso comercial sobre planos disponíveis.
Clientes com máquina VPS que possuam cPanel/WHM licenciados pela Integrator, converse com nosso suporte para a instalação do painel e orientações de uso adicionais.

Subindo o aplicativo Node.js

O aplicativo que vai realizar deploy online, se for usar o painel de controle, não necessita do diretório node_modules. Faça os seguintes passos para subir através do painel o aplicativo:

1. Retire o diretório node_modules. Esse diretório não é necessário pois o package.json será usado online para recriá-lo com as dependências do seu projeto;
2. Para o deploy através do painel, use a aba Deploy e selecione o arquivo compactado.

Deploy
Figura: Realizando o Deploy pelo painel ‎

Abaixo os passos executados para o deploy do aplicativo .zip:
❶ - Clique e selecione o arquivo;
❷ - Veja se ele foi enviado com sucesso;
❸ - Clique para configurar no domínio o aplicativo no deploy.

Registrando o aplicativo

O registro do aplicativo ocorre quando ele já está online, no diretório do seu usuário, ou seja, você já subiu no servidor. Com ou sem o diretório node_modules, o aplicativo pode ser registrado para que ele seja funcional, tanto através do acesso através da Porta definida, como também pelo domínio.

Registro do aplicativo
Figura: Registrando o aplicativo pelo painel


❶ - O nome do aplicativo. Ele será identificado nas configurações do usuário;
❷ - Selecione o domínio onde irá acessar o aplicativo;
❸ - A URL do aplicativo. A raiz do domínio é para manter / apenas. Se colocar /outronome, o aplicativo só será visível quando accessar essa URI;
❹ - A versão do Node.js que vai operar em seu aplicativo;
❺ - A porta que será executado o aplicativo Node.js através do PM2;
❻ - O arquivo inicial do aplicativo Node.js;
❼ - O caminho onde se encontra o aplicativo. Se subir pelo painel, o deploy fica em applications/ do seu usuário. O nome precisa ter o diretório onde se obtém ao descompactar o aplicativo, por exemplo;
❽ - O modo de execução do aplicativo. Pode ser Desenvolvimento ou Produção. O modo Desenvolvimento exibe erros em caso de falhas da execução;

As variáveis de ambiente

As variáveis de ambiente são adicionadas no fim do formulário. Duas variáveis não são permitidas: PORT e NODE_ENV.

Alt text

Nota: Caso não inclua uma variável de ambiente, na primeira vez que fizer o registro do aplicativo, se precisar, pode incluir em uma edição.

Onde as variáveis de ambiente são registradas

Como usamos o PM2, no arquivo app.yaml, usado pelo painel para iniciar o aplicativo. Você verá a seguinte linha no YAML:

env: { DB_NAME: nodejs_dev, NODE_ENV: development, PORT: '65001' }

Instalando as dependências

Uma vez registrado o aplicativo no painel, um caminho surge para definir o diretório virtual. Esse diretório virtual é o local onde você encontra a versão do Node.js escolhida para a execução do aplicativo. Cada aplicativo pode ter uma versão independente do Node.js. Siga os passos para instalar os pacotes do seu aplicativo Node.js:
1. Clique onde aparece o ícone (?) e copie o caminho apresentado nos aplicativos registrados, na aba Aplicativos.

Alt text

❶ - Expanda clicando na Interrogação;
❷ - Copie o caminho apresentado.

2. Em Ação, ainda na aba Aplicativos, clique no ícone Terminal.

Alt text

3. No Terminal cole o caminho copiado e confirme no Enter/Return do seu teclado.

4. Ao entrar diretório onde o aplicativo Node.js se encontra, execute o comando npm install que lerá seu arquivo package.js e recriará o diretório node_modules com as respectivas dependências:

npm install

Problemas comuns

Dependendo do aplicativo que está colocando no ar, o Terminal do painel de controle não tem memória suficiente para operar o comando npm install. Neste caso, abra um terminal local, em sua máquina, para realizar essa tarefa.
No Linux e Mac OS, o Terminal pode ser acessado diretamente nos aplicativos existentes no sistema operacional. No Windows, use o Putty. Caso queira aprender sobre o Putty, veja nosso wiki Acesso SSH no Windows.