Comprenda que implementar en Vercel es bastante fácil; sin embargo, hay algunas configuraciones que debe tener en cuenta durante la implementación.
Comencemos con la configuración de Supabase considerando que su aplicación NestJS está lista para su implementación.
Supabase es una alternativa de Firebase de código abierto con soporte completo y configuración perfecta de su base de datos PostgreSQL, y también proporciona funciones adicionales como autenticación, almacenamiento, etc.
Configure una nueva cuenta en Supabase y cree un nuevo proyecto en la cuenta.
Una vez completada la configuración, haga clic en el botón conectar en la página Inicio. Esto le mostrará diferentes opciones para conectar la base de datos a su proyecto
Pruebe la conexión en sus locales con las credenciales proporcionadas para asegurarse de que todo funcione perfectamente.
NOTA: Asegúrese de que las credenciales no estén expuestas y almacenadas en su archivo .env (¿creo que ya lo sabe?)
A continuación, configuremos nuestra cuenta de Vercel e implementemos el proyecto
Normalmente, se sabe que Vercel se usa principalmente para la implementación de aplicaciones front-end; sin embargo, también se puede usar para implementar proyectos backend.
PD: Utilice un proveedor de servicios adecuado si está trabajando en un proyecto de mediana a gran escala para sus implementaciones backend.
En su cuenta de Vercel, cree un nuevo proyecto y conéctese a su repositorio Git. Importe su archivo .env y haga clic en el botón Implementar.
Voila, eso es todo???.
...
Este es un error común porque Vercel necesita conocer su directorio de salida durante el proceso de compilación. Para solucionar este problema, simplemente agregue un archivo versel.json y copie esto:
{ "version": 2, "builds": [ { "src": "src/main.ts", "use": "@vercel/node" } ], "routes": [ { "src": "/(.*)", "dest": "src/main.ts", "methods": ["GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS"] } ] }
Ejecute la implementación nuevamente y eso es todo
...
En mi caso, fue por un error de módulo no encontrado
...
Hay varias formas de solucionar este problema:
De
import { UsersService } from 'src/users/users.service';
a
import { UsersService } from '../users/users.service';
...
Finalmente opté por este método porque no necesitaba limitar mi aplicación al uso únicamente de importaciones de rutas relativas.
Entonces, modifica el vercel.json a esto
{ "version": 2, "builds": [ { "src": "dist/main.js", "use": "@vercel/node" } ], "routes": [ { "src": "/(.*)", "dest": "dist/main.js", "methods": ["GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS"] } ] }
Vaya a su archivo .gitignore y elimine /dist.
Ejecuta una nueva implementación y eso es todo.
¡Feliz codificación! ?
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3