Skip to main content

Introdução

Para desenvolver e hospedar uma aplicação Nuxt na Square Cloud, siga a sequência de configurações e pré-requisitos abaixo. Este guia cobre todo o processo, da configuração inicial ao deploy em produção.

Pré-requisitos

  • Conta Square Cloud: Cadastre-se através da página de cadastro usando seu e-mail.
  • Plano ativo: Garante recursos dedicados e desempenho otimizado para seu aplicativo. Confira nossos planos disponíveis e escolha o mais adequado às suas necessidades.
Este guia usa o runtime Node.js, ou o runtime estático para um site gerado. Testado com Nuxt 4 no Node.js 24 em setembro de 2026.

Crie o projeto

Você precisa do Node.js e do npm na sua máquina. Se ainda não os tiver, baixe-os no site oficial do Node.js. Crie um projeto com o inicializador oficial, que substitui o nuxi init:
O inicializador pergunta qual template e qual gerenciador de pacotes usar, e depois instala as dependências. Entre na pasta do projeto e inicie o servidor de desenvolvimento:
O servidor de desenvolvimento escuta em http://localhost:3000. Edite o app/app.vue para mudar a página inicial, ou crie o app/pages/index.vue para usar o roteamento baseado em arquivos.

Faça o build para produção

O Nuxt gera, com o Nitro, um servidor Node.js independente na pasta .output. O arquivo de entrada dele é o .output/server/index.mjs, e a .output/server carrega as próprias dependências.

Porta e host

Nada a mudar no Nuxt: o servidor Nitro lê as variáveis de ambiente PORT e HOST, que a Square Cloud define como 80 e 0.0.0.0.

Configure a Square Cloud

Crie um arquivo squarecloud.app na raiz do projeto e aponte o MAIN para o servidor Nitro:
squarecloud.app
A Square Cloud o inicia com node .output/server/index.mjs. No upload pelo dashboard, defina o mesmo arquivo principal.

O que vai no ZIP

  • .output/, o build de produção.
  • package.json, nuxt.config.ts e as suas pastas de código-fonte (app/, public/ e as outras que o seu projeto tiver): na primeira inicialização, a Square Cloud roda npm install, e o script postinstall dos projetos Nuxt (nuxt prepare) precisa delas.
  • squarecloud.app.
Deixe de fora a node_modules e a .nuxt: elas são geradas de novo no servidor.

Geração estática em vez de um servidor

Se todas as páginas puderem ser geradas no build, execute npm run generate em vez de npm run build. O Nuxt grava um site estático em .output/public, que o runtime estático serve sem um processo Node.js: O runtime estático serve os arquivos do seu build com um servidor web gerenciado pela Square Cloud. Nenhum processo Node.js roda, então essa é a forma mais leve de hospedar um site sem código no servidor.
1

Faça o build do site

Execute npm run build. A saída vai para a pasta .output/public.
2

Mantenha as rotas do lado do cliente funcionando

Se a sua aplicação troca de página no navegador sem recarregar (roteamento no lado do cliente), renomeie .output/public/index.html para vite.html. O runtime estático responde qualquer caminho que não seja um arquivo com o vite.html, então recarregar uma rota como /about continua carregando a sua aplicação. Um site com um arquivo HTML por página mantém o index.html: caminhos desconhecidos passam a retornar o seu 404.html. Veja como o runtime estático serve os arquivos.
3

Adicione o arquivo de configuração

Crie um arquivo squarecloud.app dentro de .output/public. Um MAIN que aponta para um arquivo HTML seleciona o runtime estático:
squarecloud.app
Use MAIN=index.html se você manteve o index.html. 512 MB é a memória mínima para um site. Quando você faz o upload pelo dashboard, ele pede esses valores e escreve o arquivo para você.
4

Compacte a saída do build

Compacte o conteúdo de .output/public, e não a pasta em si, para que o squarecloud.app fique na raiz do ZIP. Com a CLI, execute squarecloud upload de dentro de .output/public.
Tudo o que está no ZIP fica público no seu site. Envie apenas a saída do build, nunca o código-fonte ou arquivos .env.
A maioria das ferramentas de build esvazia .output/public a cada build. Mantenha uma cópia do squarecloud.app na pasta que o seu framework copia sem alterações para o build (public/ em projetos baseados em Vite), ou repita os três últimos passos após cada build.
O nuxt generate pré-renderiza um arquivo HTML por página e um 404.html, então mantenha o index.html (sem renomear para vite.html).

Faça o deploy e verifique

Via dashboard

1

Acesse a página de upload

Acesse a página de upload e envie seu arquivo zip.
2

Configure seu ambiente

Após fazer o upload do seu arquivo zip, você precisará configurar o nome, o arquivo principal ou o ambiente de execução e outras configurações do seu projeto.
Se você estiver enviando um projeto web, certifique-se de selecionar “Publicação na Web” e definir um subdomínio para o seu projeto.
3

Faça o deploy do projeto

Por fim, clique no botão “Deploy” para hospedar seu projeto na Square Cloud. Após o deploy, você poderá monitorar o status e os registros do seu projeto no dashboard.
Enviando aplicação para a Square Cloud
4

Confirme que seu app está no ar

Seu primeiro deploy geralmente leva menos de um minuto. No dashboard, aguarde o status da sua aplicação mudar para em execução e verifique os registros em busca de erros de inicialização.
Se você fez deploy de um site ou API, abra https://<seu-subdominio>.squareweb.app no navegador: você deve ver sua aplicação respondendo. Se você fez deploy de um bot, envie um comando para confirmar que ele está online.
Seu app não está iniciando? Veja o guia de solução de problemas para as causas e correções mais comuns.

Via CLI

Para usar esse método, seu projeto precisa de um arquivo de configuração chamado squarecloud.app na raiz. Ele informa à Square Cloud como executar a sua aplicação.

Guia do arquivo de configuração

Saiba como criar o arquivo de configuração squarecloud.app que define o ambiente da sua aplicação.
1

Instale a CLI

Instale a CLI da Square Cloud. Se você já a tem, execute o mesmo comando para atualizá-la:
2

Faça login

Execute o comando abaixo. Ele abre o seu navegador: aprove o login lá e a CLI está pronta. Não há nenhuma chave de API para copiar. Para scripts e CI, veja autenticação da CLI.
3

Envie o seu projeto

Na pasta do seu projeto, execute o comando abaixo. A CLI compacta a pasta atual, deixando de fora o que o squarecloud.ignore lista, e faz o upload:
Para enviar um zip que você mesmo criou, passe-o com --file:
4

Confirme que seu app está no ar

Seu primeiro deploy geralmente leva menos de um minuto. Verifique o status e os registros da sua aplicação diretamente pelo terminal:
Se você fez deploy de um site ou API, abra https://<seu-subdominio>.squareweb.app no navegador: você deve ver sua aplicação respondendo. Se você fez deploy de um bot, envie um comando para confirmar que ele está online.
Seu app não está iniciando? Veja o guia de solução de problemas para as causas e correções mais comuns.

Erros comuns

Domínio personalizado

Para usar um domínio personalizado (ex.: meusite.com) no lugar da URL padrão meusite.squareweb.app, você precisa do plano Standard ou superior. A URL padrão vem do campo SUBDOMAIN no arquivo de configuração. Para conectar o seu domínio, veja como configurar seu próprio domínio.

Requisitos mínimos de RAM

Mínimo: 512MB de RAM para sites e APIs, o suficiente para um build estático no runtime estático. Para aplicações que renderizam páginas no servidor (Next.js, Nuxt, Angular SSR e similares), recomendamos pelo menos 1GB de RAM. Para aplicações maiores, aloque mais RAM para evitar que a aplicação fique sem memória e trave.

Não foi possível encontrar esse site.

Verifique se o subdomínio/domínio corresponde ao configurado no campo SUBDOMAIN ou nas configurações de domínio personalizado. Se você acabou de enviar o site, aguarde até 60 segundos para a Square liberar o primeiro acesso.

Site demorou demais para responder…

O seu servidor precisa escutar na porta 80 e no host 0.0.0.0. A Square Cloud define as variáveis de ambiente PORT (80) e HOST (0.0.0.0) na sua aplicação: leia essas variáveis no código em vez de fixar outros valores. Um servidor que escuta apenas em localhost ou 127.0.0.1 nunca recebe requisições.

Cannot find module .output/server/index.mjs

O build está faltando no ZIP. Execute npm run build e confira se a pasta .output está na raiz do ZIP, ao lado do squarecloud.app.

Próximos passos

Variáveis de ambiente

Mantenha segredos e configurações fora do código e leia-os em tempo de execução.

Domínio personalizado

Sirva a sua aplicação no seu próprio domínio, a partir do plano Standard.

Solução de problemas

Corrija uma aplicação que não inicia ou um site que não responde.
Para saber mais sobre o Nuxt, consulte a documentação oficial do Nuxt.

Contate-nos

Se você continuar enfrentando dificuldades técnicas, nossa equipe de suporte especializada está disponível para auxiliá-lo. Entre em contato conosco e teremos prazer em ajudá-lo a resolver qualquer questão: a qualidade do suporte é uma grande parte do motivo pelo qual desenvolvedores avaliam a Square Cloud com 4,9/5 em 402 avaliações no Google e Trustpilot.