Pular para o conteúdo principal

Introdução

Para desenvolver e hospedar um aplicativo no Square Cloud, é essencial seguir uma sequência estruturada de configurações e pré-requisitos. Este guia técnico abordará todo o processo, desde a configuração inicial até a implantação em produção.

Pré-requisitos

  • Conta Square Cloud: Plataforma de hospedagem para seu aplicativo. Cadastre-se através da página de cadastro usando seu e-mail.
  • Plano Pago Ativo: Garante recursos dedicados e desempenho otimizado para seu aplicativo. Confira nossos planos disponíveis e escolha o mais adequado às suas necessidades.
Está se perguntando quanta RAM e CPU seu plano precisa para hospedar Aplicações NestJS?
Não se preocupe, estamos aqui para ajudar. Nosso plano Standard oferece 4GB de RAM e 4vCPU, o que deve ser suficiente para a maioria dos Aplicações NestJS. No entanto, se você estiver trabalhando em um projeto maior e precisar de mais estabilidade, recomendamos considerar nosso plano Pro. Com recursos adicionais, você pode manter a estabilidade mesmo durante picos de demanda. Para comprar, basta clicar aqui.

Criando o projeto

Para criar uma aplicação NestJS, você precisa ter o Node.js e o npm instalados em seu sistema antes de seguir as etapas.

Instalação da CLI

Para usar a interface de linha de comando (CLI) do NestJS, você precisa instalá-la globalmente em seu sistema. Execute o seguinte comando:
npm install -g @nestjs/cli
Este comando instala o pacote @nestjs/cli globalmente em seu sistema, permitindo que você use o comando nest de qualquer lugar no seu terminal.

Desenvolvendo o projeto

Para criar um novo projeto NestJS, execute o seguinte comando:
nest new my-app
Neste comando, nest new my-app é usado para criar um novo projeto NestJS. O comando nest new é uma ferramenta que acompanha o nest, a CLI (Command Line Interface) do NestJS. Ele é usado para inicializar uma nova aplicação NestJS. my-app é o nome da nova aplicação. Este comando cria um novo diretório chamado my-app e configura os arquivos e dependências necessários para uma aplicação NestJS básica. Após gerar o projeto NestJS com o comando nest new my-app, o arquivo que você precisa modificar para alterar a porta é o main.ts. Este arquivo está localizado na raiz do seu diretório de projeto, dentro da pasta src.
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';

async function bootstrap() {
  const app = await NestFactory.create(AppModule);
  await app.listen(80); // Altere o número da porta aqui para 80
}
bootstrap();
A porta 80 é a porta padrão para tráfego HTTP. Você pode iniciar seu servidor de desenvolvimento com o seguinte comando:
npm run start:dev

Compilando o projeto

NestJS usa TypeScript, então você deve compilar seu código TypeScript para JavaScript antes de executar sua aplicação. Você pode compilar sua aplicação executando o seguinte comando:
npm run build
Este comando executa o script build definido no seu arquivo package.json, que por sua vez executa o comando nest build. Este comando compila seu código TypeScript para JavaScript. Após executar este comando, os arquivos JavaScript compilados estarão localizados no diretório dist do seu projeto. Esses arquivos são os que você usará para executar sua aplicação em um ambiente de produção. O arquivo principal para executar sua aplicação será dist/main.js.

Deploying

Após preparar os arquivos do seu projeto, você pode enviá-los para a Square Cloud e hospedar seu projeto. Para fazer isso, crie um arquivo ZIP contendo todos os arquivos do seu projeto.

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

Finally, click on the "Deploy" button to host your project on Square Cloud.
After deployment, you can monitor your project's status and logs from the dashboard.

Via CLI

Para usar esse método, você precisa criar um arquivo de configuração chamado squarecloud.app no diretório raiz do seu projeto. Esse arquivo conterá a configuração necessária para o seu projeto.

Saiba mais sobre: Como criar arquivo de configuração da Square Cloud.

O arquivo squarecloud.app é um arquivo de configuração que será usado para configurar seu aplicativo; ele será usado para definir seu ambiente.
1

Primeiro Passo

Primeiro, você precisa ter a CLI instalada em seu ambiente. Se você ainda não a possui, execute o seguinte comando em seu terminal:
npm install -g @squarecloud/cli
Se você já a possui, recomendamos atualizá-la. Para fazer isso, execute o seguinte comando em seu terminal:
squarecloud update
2

Segundo Passo

Agora, para autenticar e usar outros comandos da CLI, você encontrará sua chave de autorização aqui clicando em "Solicitar Chave da API". Após obter sua chave de autorização, execute o seguinte comando:
squarecloud auth login
3

Terceiro Passo

Finalmente, para fazer o deploy da sua aplicação para a Square Cloud usando a CLI, você precisa executar o seguinte comando:
squarecloud upload
Ou se já possui o zip criado:
squarecloud upload --file <caminho/para/zip>

Recursos Adicionais

Para mais informações sobre o NestJS e suas ferramentas, visite a documentação oficial do NestJS. Lá, você encontrará guias detalhados, tutoriais e documentação da API para ajudá-lo a aproveitar ao máximo o NestJS.

Solução de Problemas

Domínio Personalizado

Para usar domínio personalizado (ex: meusite.com) ao invés da URL padrão https://meusite.squareweb.app/, você precisa do plano Standard ou superior. O subdomínio é definido pelo campo SUBDOMAIN no arquivo de configuração. Veja: Como configurar seu domínio personalizado.

Requisitos Mínimos de RAM

Mínimo: 512MB de RAM para websites/APIs simples. Para sites com frameworks (Next.JS, React, Vue, Angular, etc.), sugerimos sempre pelo menos 1GB de RAM. Para aplicações maiores, use mais RAM para evitar erro LACK_OF_RAM e garantir performance.

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...

Verifique se configurou corretamente a porta 80 e host 0.0.0.0 na aplicação. Recomendamos usar as variáveis de ambiente forçadas da Square: PORT e HOST do arquivo .env.

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.