NodeJs: Criando uma aplicação pelo cPanel

Neste tutorial, você aprenderá a criar uma aplicação NodeJs através do painel de controle cPanel. Utilizaremos o domínio meusite.com.br apenas como exemplo/teste.

Este guia é indicado a clientes que tenham o serviço de hospedagem NodeJs contratado. Clientes da hospedagem de sites comum não possuem esta ferramenta.

1º – Acesse seu painel de controle cPanel

Primeiramente, em seu painel cPanel, localize o ícone da ferramenta Setup Node.js App conforme imagem abaixo.

2º  – Crie a aplicação

Em seguida, ao acessar a ferramenta Setup Node.js App clique no botão de cor azul “Create Application” conforme imagem abaixo:

3º – Configure a nova aplicação

Em terceiro luga, você precisará selecionar a versão desejada do NodeJS, o modo (desenvolvimento ou produção), o nome do diretório da aplicação, o domínio (em nosso exemplo, usamos meusite.com.br) e por último, o arquivo de inicialização. Dica: use um nome como index.js, main.js ou start.js por exemplo.

Após preencher os requisitos para o projeto, clique no botão de cor azul “Create”.

4º – Aplicação criada!

Assim, sua aplicação NodeJs foi criada com sucesso. Entretanto, preste atenção na imagem a seguir.

Nessa imagem, podemos ver dois campos selecionados com uma caixa de cor vermelha. A primeira seleção informa um comando que deve ser utilizado para acessar o ambiente virtual da aplicação. Em nosso exemplo o comando é source /home/meusitecom/nodevenv/meuapp/10/bin/activate

Cada aplicação possui seu próprio comando de acesso ao ambiente virtual.

Na segunda seleção, é informado que não foi localizado nenhum arquivo de configuração para o NodeJS. Todo aplicativo NodeJS precisa conter um arquivo chamado package.json. Esse arquivo é muito importante e é responsável por conter informações como nome do projeto, versão, dependências, scripts, entre outras opções. Você pode conhecer melhor sobre esse arquivo em sua documentação oficial.

Contudo, o cPanel não cria automaticamente o arquivo package.json, essa tarefa depende de você. Para isso, acesse sua hospedagem via SSH. Caso não saiba como se conectar via SSH, acesse nosso tutorial no seguinte link.

5º – Criando package.json

Ao se conectar por SSH em sua hospedagem, execute o comando de acesso ao ambiente virtual de sua aplicação NodeJS fornecido pelo cPanel. Em nosso exemplo, o comando é source /home/meusitecom/nodevenv/meuapp/10/bin/activate

Ao executar este comando, você estará conectado no ambiente virtual da aplicação. Em nosso exemplo, estamos conectado ao projeto meuapp. Cada projeto terá seu próprio comando de acesso ao ambiente. Feito isso, você pode criar o arquivo package.json manualmente ou através do npm init. Esse é um exemplo:

6º – Teste sua aplicação NodeJs

Ao criar sua aplicação, o cPanel já inicializa a mesma. Em seguida, você pode testar acessando pelo seu navegador o endereço do seu site (em nosso exemplo, usamos o domínio meusite.com.br).

Você pode iniciar, reiniciar, parar a execução da aplicação e excluir o projeto através do cPanel.

Fazendo o deploy de um projeto já pronto no GitHub em seu cPanel

Caso você tenha um projeto no GitHub e queira fazer o deploy nele no cPanel, logo abaixo fizemos um roteiro para que possa se guiar nessa configuração de forma simples. Basicamente é quase o mesmo roteiro do processo acima, somente com alguns detalhes extras:

1) Acesse sua hospedagem através do terminal SSH;

Caso você esteja usando o Windows, você pode usar o programa PuTTY por exemplo.

2) Após fazer o acesso, você estará em sua pasta raiz da sua hospedagem(/home/seu-usuario), então faça o clone do projeto que deseja usando o comando git clone;

git clone URL_DO_PROJETO

3) Após o projeto ser clonado, você verá um diretório criado com o mesmo nome do repositório do GitHub. Copie o nome desse diretório e acesse o seu painel de controle cPanel e vá na opção “Setup Node App” e clique na opção “Create Application” para poder criar um novo projeto Node.

4) Preencha os seguintes campos:

– Node.js version: (a versão do Node que deseja usar para esse projeto, use a versão na qual o projeto foi desenvolvido para que seja compatível com o mesmo);
– Application root: Neste campo você vai colar o nome do diretório que foi criado após ter feito o clone do projeto.
– Application URL: Escolha o domínio/subdomínio onde esse projeto será publicado
– Application startup File: Start da aplicação, pode criar com nome server.js, app.js ou main.js por exemplo.

Esses são os principais campos. Após preenche-los, poderá clicar no botão “Create” para criar o projeto.

5) Após o painel terminar a criação do projeto, aparecerão dois botões mais abaixo: “Run NPM install” e o “Run JS script”.

Clique primeiramente no Run NPM install* para instalar as dependências do projeto. 

*Esse procedimento também pode ser feito via terminal SSH caso preferir. Basta apenas acessar o ambiente virtual da aplicação(No topo da página do projeto no painel aparecerá um comando para isso, escrito dessa forma: “Enter to the virtual environment. To enter to virtual environment, run the command:”).

Basta executar aquele comando no terminal que entrará no virtual env. do projeto e assim você poderá usar o comando npm normalmente.

Obs: Esse processo pode demorar alguns minutos para ser concluído.

6) Concluindo o npm install, execute agora o script de start da aplicação, clicando no painel na opção “Run JS script” e escolhendo o start ou rode através do virtual env. com o comando npm start como preferir.

Obs: Caso faça pelo painel veja se mais abaixo nos logs se ele apresentará algum erro durante o processo, no nosso exemplo que fizemos digamos que ele gere um erro na hora do start acusando a seguinte mensagem de erro:

“sh: yarn: command not found”

Como o erro diz que não encontrou o yarn, acessaremos o virtual env e instalaremos ele com o seguinte comando:

npm install –global yarn

Conforme diz a documentação oficial: https://classic.yarnpkg.com/lang/en/docs/install/#debian-stable

Resolvendo todos os erros pendentes da sua aplicação o start será finalizado com sucesso. 

Obs: O script de start também pode demorar algum tempo para ser concluído. Caso fique carregando por muito tempo e não der nenhum retorno na interface do cPanel, tente prosseguir para o o passo seguinte testando o acesso do projeto na porta 3000, pois algumas vezes o cPanel pode apresentar algum problema na atualização da página, mas isso não significa que o start não tenha sido finalizado, você pode atualizar  a página do cPanel com um F5.

7) Após o passo anterior ser concluído você já deverá conseguir acessar seu projeto através da porta 3000(ex: http://meusite.com.br:3000) normalmente.

8) Para finalizar, agora basta você apenas configurar para que seu site abra o conteúdo na porta 80 para não ter que ficar digitando a porta :3000 após o endereço.

Isso pode ser feito por exemplo através do arquivo .htaccess na pasta do site/subdomínio usando o seguinte código de exemplo:

RewriteEngine On
RewriteRule ^$ http://127.0.0.1:3000/ [P,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://127.0.0.1:3000/$1 [P,L]

Este artigo foi útil?

Obrigado pela resposta!
Gustavo Carvalho

Gustavo Carvalho

Analista de sistemas, formado pela PUC-Rio. Programador, gestor de redes e diretor da empresa Homehost. Pai do Bóris, seu pet de estimação. Gosta de rock'n'roll, cerveja artesanal e de escrever sobre assuntos técnicos.

Contato: gustavo.blog@homehost.com.br

Ganhe 30% OFF

Indique seu nome e e-mail,e ganhe um cupom de desconto de 30% para sempre na Homehost!