Capítulo 15 · 15.5
Configurar uma aplicação Node JS
O seu pacote de hosting não corre apenas PHP. Com Setup Node.js App pode configurar você mesmo uma aplicação Node JS, por exemplo uma aplicação Express ou uma pequena API. Cada aplicação recebe a sua própria versão de Node JS e a sua própria pasta.
Criar uma aplicação
- Clique no DirectAdmin, em Recursos extras, em Setup Node.js App.
- Clique em CREATE APPLICATION (1).
- Escolha em Node.js version (1) a versão. Pode escolher entre Node JS 9, 16, 20, 22 e 24. Por predefinição está selecionado o 16, mas é preferível escolher a versão mais recente suportada pela sua aplicação, pois o 9 e o 16 já não recebem atualizações.
- Escolha em Application mode Development ou Production. Isto define a variável NODE_ENV. Para uma aplicação em produção, escolha Production.
- Preencha em Application root (2) a pasta onde ficarão os ficheiros da sua aplicação, por exemplo apps/minhaapp. Escolha uma pasta fora de public_html.
- Escolha em Application URL (3) o domínio e, opcionalmente, um caminho, por exemplo api para seudominio.pt/api. Se deixar o caminho em branco, a aplicação é executada em todo o domínio.
- Preencha em Application startup file (4) o ficheiro com que a sua aplicação arranca, como app.js ou server.js.
- Se necessário, adicione em Environment variables com ADD VARIABLE as suas próprias definições.
- Clique em CREATE.



Carregar o seu código e instalar pacotes
- Carregue o seu código para a pasta que escolheu em Application root, com o Gerenciador de arquivos, FTP ou Git (versionamento) (consulte Fazer upload e download de arquivos e Git: atualizar o seu site a partir de um repositório).
- Existe um ficheiro package.json nessa pasta? Volte então a Setup Node.js App, clique no lápis junto à sua aplicação para a editar e clique em Run NPM Install. Os pacotes serão então instalados.
- Clique em Restart para (re)iniciar a aplicação.
Após cada alteração ao seu código, clique novamente em Restart. Caso contrário, continua a correr a versão anterior.
Bom saber
- A sua aplicação tem de escutar na porta que o servidor lhe atribui. Utilize no seu código process.env.PORT e não um número de porta fixo.
- A aplicação funciona dentro dos limites do seu pacote (CPU, memória, processos; consulte Resource Usage: CPU, memória e processos). Para uma aplicação mais pesada, escolha um pacote maior.
- Num pacote com SSH (consulte Chaves do SSH e iniciar sessão com SSH), no topo do ecrã da sua aplicação encontra um comando para ativar, no Terminal de comando, a versão correta de Node JS e a pasta correspondente. Depois disso, node e npm funcionam como habitualmente.
- Um site criado com um gerador de sites (HTML estático) não precisa de Node JS. Esse site carrega-se diretamente para public_html.
Perguntas frequentes
A minha aplicação apresenta um erro 503.
A aplicação não arranca. Normalmente é porque o ficheiro de arranque está incorreto, faltam pacotes (esqueceu-se de executar Run NPM Install) ou há um erro no código. Consulte na pasta da sua aplicação o ficheiro stderr.log para ver a mensagem de erro.
A minha aplicação pode correr o dia todo?
Sim, desde que se mantenha dentro dos limites do seu pacote. A aplicação é iniciada quando chega um pedido e é encerrada novamente após algum tempo sem pedidos. Uma aplicação que precise de estar sempre em execução sem visitantes, como um bot, é mais adequada a um VPS.
A minha aplicação está bloqueada e não responde a Stop nem a Restart.
Aguarde um minuto e tente novamente. Se mesmo assim não resultar, abra um ticket e indique o nome da sua aplicação.
