Entenda que a implantação no Vercel é bastante fácil, no entanto, existem algumas configurações que você precisa levar em consideração durante a implantação.
Vamos começar com a configuração do Supabase, considerando que seu aplicativo NestJS está pronto para implantação.
Supabase é uma alternativa de código aberto ao Firebase com suporte completo e configuração perfeita do seu banco de dados PostgreSQL, e também fornece recursos adicionais, como autenticação, armazenamento, etc.
Configure uma nova conta no Supabase e crie um novo projeto na conta.
Assim que a configuração for concluída, clique no botão conectar na página Página inicial. Isso mostrará diferentes opções para conectar o banco de dados ao seu projeto
Teste a conexão em seus locais com as credenciais fornecidas para garantir que tudo esteja funcionando perfeitamente.
NOTA: Certifique-se de que as credenciais não sejam expostas e armazenadas em seu arquivo .env (acredito que você já saiba disso?)
A seguir, vamos configurar nossa conta Vercel e implantar o projeto
Normalmente, Vercel é conhecido principalmente por ser usado para implantação de aplicativos front-end, no entanto, também pode ser usado para implantar projetos de back-end.
PS: Use um provedor de serviços adequado se estiver trabalhando em um projeto de médio a grande porte para suas implantações de back-end.
Na sua conta Vercel, crie um novo projeto e conecte-se ao seu repositório Git. Importe seu arquivo .env e clique no botão Implantar.
Voila, é isso ???.
...
Este é um erro comum porque o Vercel precisa conhecer seu diretório de saída durante o processo de construção. Para corrigir isso, basta adicionar um arquivo version.json e copiar isto:
{ "version": 2, "builds": [ { "src": "src/main.ts", "use": "@vercel/node" } ], "routes": [ { "src": "/(.*)", "dest": "src/main.ts", "methods": ["GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS"] } ] }
Execute a implantação novamente e pronto
...
No meu caso, foi por causa de um erro de módulo não encontrado
...
Existem várias maneiras de corrigir esse problema:
De
import { UsersService } from 'src/users/users.service';
para
import { UsersService } from '../users/users.service';
...
Acabei optando por esse método porque não precisava limitar meu aplicativo a usar apenas importações de caminho relativo.
Então, modifique o vercel.json para este
{ "version": 2, "builds": [ { "src": "dist/main.js", "use": "@vercel/node" } ], "routes": [ { "src": "/(.*)", "dest": "dist/main.js", "methods": ["GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS"] } ] }
Vá para o arquivo .gitignore e remova /dist.
Execute uma nova implantação e pronto.
Boa codificação! ?
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3