Adri谩n UB Adri谩n UB

Como desplegar NestJS en Deta.sh 馃殌

Feb 27, 2022

驴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


> cd ..
CC BY-NC-SA 4.0 2021-PRESENT 漏 Adri谩n UB
Hecho con Astro Vitesse