¿Que es Deta.sh?
Deta es una nube gratuita diseñada pensando en la experiencia del desarrollador y del usuario, nos ayuda crear implementaciones de nuestras ideas en la nube más amigable con los desarrolladores, es totalmente gratuita y para siempre.
En esta podemos desplegar aplicaciones hecha con NodeJs y Python, donde nos proveen un Micro por cada aplicación desplegada.
Creación del proyecto NestJS
Para comenzar a crear nuestro clonaremos el starter de NestJS
git clone https://github.com/nestjs/typescript-starter
Instalamos las dependencias y vemos que nuestro proyecto corra sin ningun error.
Configurar proyecto
Primero crearemos nuestro punto de entrada en src/index.ts
:
import { NestFactory } from "@nestjs/core"; import { ExpressAdapter } from "@nestjs/platform-express"; import { AppModule } from "./app.module"; const createNestServer = async (expressInstance) => { const app = await NestFactory.create( AppModule, new ExpressAdapter(expressInstance) ); return app.init(); }; export default createNestServer;
Crearemos un archivo llamado index.js
en el root de nuestra aplicación:
const express = require("express"); const createServer = require("./dist/index").default; const app = express(); let nest; app.use(async (req, res) => { if (!nest) { nest = express(); await createServer(nest); } return nest(req, res); }); module.exports = app;
Desplegar proyecto
Para poder desplegar nuestra aplicación necesitamos correr los siguientes comandos.
Compilar
Escribe el siguiente comando en la terminal para compilar tu proyecto:
yarn build
Iniciar sesión en Deta
Para iniciar sesión en Deta necesitamos correr el siguiente comando:
deta login
Crear un Micro
Creamos un nuevo micro desde una carpeta anterior a nuestro proyecto:
deta new --node nombre-del-proyecto
Deploy 🚀
Y por ultimo desplegamos el proyecto ejecutando el siguiente comando en el root de la aplicación:
deta deploy
Luego puedes visitar la url creada por Deta y sacar provecho
Ejemplo: https://7dug2x.deta.dev/