Pular para o conteúdo

Como publicar um app Node.js a partir do GitHub

O que seu app precisa ter, como criar no painel, as variáveis de ambiente, o deploy automático a cada push e seu domínio com SSL.

Por Equipo de Fodenflow 3 min de leitura

Com um plano de Apps Node.js você publica apps Node (Express, Fastify, NestJS, Next.js e mais) direto do seu repositório no GitHub, GitLab ou Bitbucket. A gente clona o código, instala as dependências, roda o build e liga o app com HTTPS.

1. Prepare seu app

Ele precisa cumprir três coisas:

  • Escutar na porta da variável PORT.
  • Ter um comando de início: o script start do package.json (ou o que você definir no painel).
  • Responder na rota de saúde (por padrão /): antes de mandar visitas para uma versão nova, conferimos se ela responde.

Um exemplo mínimo com Express:

const express = require("express");
const app = express();

app.get("/", (req, res) => res.send("Olá da Fodenflow!"));

app.listen(process.env.PORT || 3000);

E no package.json:

"scripts": {
  "start": "node index.js"
}

2. Crie o app no painel

  1. Acesse Apps Node.js e clique em Criar app no seu plano.
  2. Escolha Repositório Git, cole o endereço HTTPS (por exemplo https://github.com/usuario/minha-api) e a branch (normalmente main).
  3. Se o repositório for privado, marque É um repositório privado e cole um token somente leitura. No GitHub ele é criado em Settings → Developer settings → Personal access tokens → Fine-grained tokens, com acesso só a esse repositório e Contents: Read-only.
  4. Escolha a versão do Node (20, 22 ou 24). Os comandos de instalação e build são opcionais: se deixar vazios, detectamos pelo seu package.json e gerenciador (npm, pnpm ou yarn).
  5. Cadastre suas variáveis de ambiente e escolha o endereço: seu app fica em https://seu-app.apps.fodenflow.com.
  6. Clique em Criar e implantar e acompanhe o registro do build ao vivo.

Não usa Git? Você também pode enviar um ZIP do projeto (até 200 MB, sem node_modules) ou começar com um modelo.

3. Variáveis de ambiente

Chaves de API e senhas vão no seu app → Variáveis (ficam criptografadas; as secretas não aparecem de novo). Você pode colar um .env inteiro. Nós definimos três:

PORT       a porta onde seu app precisa escutar
DATA_DIR   uma pasta que se mantém entre os deploys
NODE_ENV   production (você pode mudar)

Atenção: o resto do disco do app é montado do zero a cada deploy. O que precisar ficar (arquivos enviados, por exemplo), guarde em DATA_DIR.

4. Deploy automático a cada push

No seu app → Ajustes → Deploy automático, copie a URL do webhook (e o segredo) e cadastre no GitHub em Settings → Webhooks → Add webhook, com Content type application/json e a opção Just the push event. A partir daí, cada push na branch configurada publica uma versão nova.

A versão nova liga ao lado da que está no ar e as visitas só passam para ela quando a rota de saúde responde: sem quedas. Se algo der errado, em Deploys clique em Voltar para esta versão em uma anterior.

5. Seu domínio, com SSL

No seu app → Domínios, adicione seu domínio e mostramos o registro a criar: um CNAME para o endereço grátis do app se for um subdomínio (www, api), ou um A para o nosso IP se for o domínio raiz. Quando o DNS estiver certo, emitimos o certificado do Let's Encrypt sozinhos.

Para continuar

Compartilhar

Também pode ajudar

Domínios

Como conectar seu domínio à sua hospedagem

Duas formas de apontar um domínio que está em outra empresa para sua hospedagem da Fodenflow, quanto tempo leva e como deixar com https.

2 min de leituraLer

Procurando algo específico do painel?

A central de ajuda tem guias passo a passo de cada ferramenta.

Ir para a central de ajuda
Como publicar um app Node.js a partir do GitHub · Fodenflow