Erros comuns
Quase todo deploy que falha cai em uma destas. Procure o sintoma, aplique a correção, faça um novo deploy.
O deploy passou, mas o endereço não abre (porta errada)
O app está rodando, só não na porta que a plataforma espera. Escute em process.env.PORT e em 0.0.0.0, não em localhost nem em uma porta fixa. Veja Variáveis e a porta.
Build ok, mas o app não inicia (falta o script start)
No Node, o package.json precisa de "start" em scripts. Sem ele, não há o que executar. Em outras linguagens, informe o comando em start no lumahost.json.
O app cai sozinho (memória estourada, OOM)
Cada app tem um limite rígido de RAM. Passou dele, o app é encerrado, e o painel mostra o motivo. Só o seu app cai, os outros seguem normais. Aumente a RAM do app, se o pool do plano permitir, ou procure o vazamento. O gráfico de RAM nas métricas mostra a curva antes da queda.
O build passou de 15 minutos
O build é cancelado no limite de 15 minutos. Veja se o projeto está instalando dependências que não usa, se o zip leva pastas pesadas (node_modules, .next) e se o build faz alguma chamada de rede que fica pendurada. Em horários de muito uso, o deploy também espera na fila: essa espera não conta no limite.
Worker que reinicia sem parar (ou "sem porta")
Um bot ou agente publicado como web é derrubado porque não responde em porta nenhuma. Troque o tipo para worker. Se continua reiniciando, abra os logs de execução: em geral é uma variável faltando (como o token do bot).
Meu app não consegue enviar e-mail
A saída de SMTP (portas 25, 465 e 587) é bloqueada, exceto a 587 para o servidor de e-mail da LumaHost. Use uma caixa da LumaHost ou uma API de e-mail por HTTPS.
Next.js 16: "Route segment config 'dynamic' is not compatible"
Projetos novos do Next.js 16 (o create-next-app atual e muitos exportados do Lovable ou do Bolt) vêm com Cache Components ligado, e aí export const dynamic = 'force-dynamic' quebra o build. Tire essa linha e leia o banco dentro de um <Suspense>, depois de await connection() (de next/server).
Não conecto no banco
Use a URL interna, de dentro do app: o host é o nome interno do banco e só resolve na rede dos seus apps. Conexão da sua máquina ainda não está disponível. Veja Bancos de dados.