Introdução: Por que o VPS é a escolha certa para sua aplicação Node.js
Você escreveu uma aplicação incrível em JavaScript (Node.js), testou localmente, e agora ela está pronta para conquistar o mundo. Mas como transferi-la do ambiente de desenvolvimento acolhedor para o mundo implacável da produção? A resposta é simples — VPS (Virtual Private Server). Ao contrário da hospedagem compartilhada, o VPS oferece controle total sobre o servidor, acesso root e a possibilidade de ajustar o ambiente às necessidades da sua aplicação Node.js.
Neste guia passo a passo, percorreremos todo o caminho: desde a compra do servidor e instalação do Node.js até a configuração do domínio, certificado SSL e gerenciador de processos PM2. Você aprenderá como tornar seu site estável, rápido e seguro. Vamos lá!
Passo 1: Preparação do VPS e conexão ao servidor
Primeiro, você precisa alugar um VPS. Qualquer provedor popular serve: DigitalOcean, Linode, Vultr ou equivalentes nacionais. A configuração mínima para uma aplicação pequena é 1 vCPU e 1 GB de RAM (com Ubuntu 20.04 ou 22.04 LTS).
Após criar o servidor, você receberá um endereço IP e a senha root. Conecte-se via SSH:
ssh root@seu_endereço_IPSe você usa macOS ou Linux, o cliente SSH já está integrado. No Windows, você pode usar o PowerShell ou Putty.
Atualize o sistema imediatamente:
apt update && apt upgrade -yDica: crie um usuário separado (não root) para o trabalho diário. Isso aumenta a segurança:
adduser myuserusermod -aG sudo myusersu - myuserInstalação do Node.js e npm
Instalaremos a versão estável mais recente do Node.js através do NodeSource — esta é a forma mais confiável:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -sudo apt install -y nodejsVerifique as versões:
node --version # v20.x.xnpm --version # 10.x.xÓtimo! Agora temos o ambiente para executar código JavaScript no servidor.
Passo 2: Upload da aplicação para o servidor e instalação das dependências
Existem várias formas de transferir o código. A mais simples para iniciantes é usar git clone. Se seu código está no GitHub/GitLab, execute:
git clone https://github.com/sua_conta/seu_repositorio.git /var/www/myappcd /var/www/myappSe o repositório for privado, configure chaves SSH ou use um Personal Access Token.
Uma alternativa é enviar os arquivos via SCP (do seu terminal local):
scp -r /caminho/para/seu/projeto myuser@seu_IP:/var/www/myappApós transferir o código, instale as dependências:
cd /var/www/myappnpm install --productionA flag --production garante que dependências de desenvolvimento (testes, bundlers, etc.) não sejam instaladas, economizando espaço e aumentando a segurança.
Configuração das variáveis de ambiente
Nunca armazene senhas e chaves de API no código. Crie um arquivo .env na raiz do projeto:
nano .envExemplo de conteúdo:
PORT=3000DB_HOST=localhostDB_USER=myuserDB_PASS=supersecretJWT_SECRET=myjwtsecret123Certifique-se de que este arquivo foi adicionado ao .gitignore. Para ler as variáveis no código, use o pacote dotenv (ele já deve estar nas suas dependências).
Passo 3: Execução da aplicação com PM2 e configuração de inicialização automática
Se você executar node app.js e fechar a sessão SSH, a aplicação será encerrada. Precisamos de um gerenciador de processos que mantenha a aplicação ativa 24/7. O PM2 é a escolha ideal para Node.js.
Instale o PM2 globalmente:
sudo npm install -g pm2Inicie a aplicação:
pm2 start app.js --name "myapp"Se sua aplicação usa a porta 3000,