Artigos sobre: Websites & APIs

Como hospedar aplicações Nuxt

Como hospedar aplicações Nuxt na Square Cloud


O Nuxt utiliza um motor de renderização integrado chamado Nitro para compilar e preparar a aplicação para produção. Para hospedá-lo na Square Cloud, você só precisa gerar o build do projeto, apontar para o arquivo de entrada correto e configurar a porta padrão do sistema.



1. Executando o Build de Produção


Antes de enviar os arquivos para a Square Cloud, a aplicação precisa ser compilada para que todo o código Vue e TypeScript seja otimizado.


Abra o terminal na raiz do seu projeto local e execute o comando:

npm run build


Esse comando acionará o Nitro, criando uma pasta oculta chamada .output/ na raiz do seu projeto. É exatamente dentro dessa pasta que reside todo o código do seu servidor de produção.



2. Definindo o Arquivo Principal (Main)


Aplicações Nuxt em produção não utilizam um arquivo comum como index.js ou server.js na raiz. O ponto de entrada gerado pelo compilador fica localizado dentro da estrutura de saída.


  • Caminho do Arquivo: .output/server/index.mjs


No seu arquivo de configuração squarecloud.app (ou diretamente no formulário do Dashboard da Square Cloud), você deve definir o campo correspondente ao arquivo principal exatamente assim:

MAIN=.output/server/index.mjs



3. O que incluir no arquivo de upload (.zip)?


Para garantir um deploy rápido e limpo, crie um arquivo .zip contendo apenas os artefatos gerados para a execução de produção.


  • O que INCLUIR: A pasta .output/ inteira (certifique-se de que seu compactador não ignore pastas que começam com ponto), o arquivo package.json e o seu lockfile (package-lock.json ou yarn.lock).
  • O que EXCLUIR: Nunca inclua a pasta node_modules ou a pasta .nuxt/ (usada apenas em modo de desenvolvimento). A Square Cloud fará a instalação limpa e isolada das dependências necessárias diretamente no servidor.



4. Resolução de Problemas Comuns


  • Erro "O site demorou para responder": Se você tentar acessar a URL da sua aplicação e se deparar com essa mensagem de tempo limite esgotado (timeout), isso costuma estar diretamente vinculado ao site estar usando a porta errada. Por padrão, o motor Nitro do Nuxt tenta abrir o servidor na porta 3000. Como a infraestrutura da Square Cloud espera e direciona o tráfego externamente apenas através da porta 80, a rede não consegue encontrar a sua aplicação, fazendo com que o navegador desista após um tempo esperando. Para corrigir, revise seu código e garanta que a variável PORT está definida exatamente como 80.

Atualizado em: 25/05/2026

Este artigo foi útil?

Compartilhe seu feedback

Cancelar

Obrigado!