0
Carrito de compra
Tu carrito esta vacio
DesarrolloDesarrollo

Backend con NestJS: APIs REST, Seguridad, Docker y Bases de Datos

Conoce nuestro curso

Aprende NestJS Backend y crea APIs seguras, gestiona bases de datos, usa Docker y desarrolla microservicios paso a paso.

Próxima convocatoria: 28 de abril

El precio original era: 375,00 €.El precio actual es: 300,00 €.

Descuento

Solo para cursos bonificados a través de Fundae. El coste de la gestión es de un 10% más iva y este importe también es bonificable. Pendiente de validación por TrainingIT

Modalidad
Teleformación
Bonificable
100% por Fundae
Cupo
limitado (80)
Ejercicios
100% Práctico
Profesor
Dudas en 24 horas
Acceso ilimitado
Al contenido tras finalizar el curso

Curso NestJS Backend: Todo lo que Necesitas para Dominar el Backend

El Curso NestJS Backend de TrainingIT es una formación integral diseñada para que aprendas a desarrollar aplicaciones backend profesionales de principio a fin. Desde la instalación inicial hasta el despliegue en producción con Docker, este curso abarca todas las herramientas, tecnologías y buenas prácticas necesarias para convertirte en un verdadero especialista backend.

Aprende APIs REST y Autenticación Segura

A lo largo del Curso NestJS Backend, aprenderás a desarrollar APIs REST robustas y escalables, implementar sistemas de autenticación segura con JWT y gestionar usuarios de forma eficiente. También documentarás tus endpoints utilizando Swagger, aplicando estándares profesionales de documentación técnica.

Todo explicado paso a paso, con ejemplos prácticos y enfocado en el mundo real.

Conecta NestJS con Bases de Datos Populares

En este Curso, descubrirás cómo conectar tus aplicaciones con las bases de datos más utilizadas en la industria:

  • MySQL

  • Oracle

  • MongoDB

Aprenderás a realizar integraciones limpias, optimizar consultas y estructurar tus datos de manera eficaz. Además, dominarás Docker para crear entornos de desarrollo estables, replicables y preparados para la producción.

Microservicios, Cron Jobs y Más

El temario del curso no se queda en lo básico. Durante el Curso, desarrollarás microservicios que se comunican entre sí, automatizarás procesos mediante cron jobs, y enviarás correos electrónicos desde tu backend usando Nodemailer.

También aprenderás a:

  • Gestionar logs profesionales con Winston.

  • Preparar tu aplicación para el despliegue en entornos reales.

  • Aplicar principios de arquitectura moderna, como separación de responsabilidades y escalabilidad horizontal.

Conviértete en un Desarrollador Backend Profesional con el Curso Backend NestJS

El Curso NestJS Backend de TrainingIT no es solo una capacitación técnica. Es una ruta profesional pensada para que adquieras confianza, construyas proyectos reales y estés preparado para oportunidades laborales en el área backend.

Aprende con ejemplos prácticos, buenas prácticas y herramientas modernas que hoy utilizan las mejores empresas del mundo tech.

¡Matricúlate hoy y empieza tu camino hacia el desarrollo backend profesional con NestJS!

El Curso NestJS Backend tiene como objetivo ofrecerte las habilidades necesarias para desarrollar aplicaciones backend eficientes con NestJS.

  • Crear aplicaciones backend completas y escalables con NestJS.
  • Desarrollar APIs REST y gestionar autenticación segura.
  • Integrar bases de datos como MySQL, Oracle y MongoDB.
  • Implementar sistemas de logs y documentar con Swagger.
  • Desplegar aplicaciones usando Docker.

Para aprovechar al máximo este Curso NestJS Backend, es recomendable que los alumnos cumplan con los siguientes requisitos:

  • Conocimientos básicos de TypeScript y JavaScript.
  • Familiaridad con Node.js y su ecosistema.
  • Experiencia mínima en desarrollo de aplicaciones o APIs.

Nota importante: TrainingIT no facilita entornos de desarrollo, licencias de software, cuentas ni servicios externos para la realización de este curso. Cada alumno debe gestionar su propio entorno y recursos para seguir las prácticas y proyectos.

1. Preparación del entorno

1.1 Instalar Visual Studio Code
1.2 Instalar Node.js
1.3 Instalar Postman
1.4 Instalar Docker
1.5 Instalar Visual Studio Code Linux
1.6 Instalar Node.js Linux
1.7 Instalar Postman Linux

2. Instalación de NestJs

2.1 Instalación de @nestjs/cli

3. Configuración Postman

3.1 Explicando cómo funciona Postman
3.2 Creando un environment
3.3 Exportar e importar variables del entorno

4. REST API de una lista de nombres

4.1 Resultado esperado
4.2 ¿Qué es una REST API?
4.3 Creando nuestro proyecto
4.4 Creando nuestro módulo
4.5 Creando nuestro controlador
4.6 Creando nuestro servicio
4.7 Creando e inicializando nuestro array de nombres
4.8 Operación Create con los decoradores @Post y @Body
4.9 No insertar un nombre si ya existe
4.10 Operación Read con el decorador @Get
4.11 Mejorando la operación Read con el decorador @Query
4.12 Operación Update con los decoradores @Put y @Param
4.13 Operación Delete con los decoradores @Delete y @Param
4.14 Limpiando todos los nombres
4.15 Exportando los endpoints de Postman

5. Swagger

5.1 Resultado
5.2 Instalar swagger
5.3 ApiTags
5.4 ApiOperation
5.5 ApiParam
5.6 ApiQuery
5.7 ApiPost
5.8 Probando nuestra documentación completamente

6. Usuarios

6.1 Resultado esperado
6.2 Creando el proyecto
6.3 Creando nuestro módulo, controlador y servicio
6.4 Creando nuestro primer dto
6.5 Validando la entrada de parámetros
6.6 Global Pipe
6.7 Creando usuarios
6.8 Pipe parseDate
6.9 Obteniendo usuarios filtrados
6.10 Actualizando usuarios
6.11 Eliminando usuarios
6.12 Documentando nuestros endpoints
6.13 Documentando nuestro dto

7. Instalación MySQL

7.1 Descargar imagen MySQL
7.2 Instalar MySQL Workbench en Windows
7.3 Instalar MySQL Workbench en Linux

8. Conexion MySQL

8.1 Resultado esperado
8.2 Diferencia entre un entity y un dto
8.3 Reinicio de tablas
8.4 Creando un proyecto
8.5 Instalando TypeORM
8.6 ¡A tener en cuenta en el próximo video!
8.7 Configuración del ORM con ormconfig.json
8.8 Creando el módulo Product
8.9 Creando nuestro product-dto
8.10 Creando nuestro product.entity
8.11 Inyectando nuestro repositorio en productService
8.12 Creando un producto
8.13 Devolviendo un producto por su id
8.14 Mejorando la validación del producto al crearlo
8.15 Devolviendo todos los productos
8.16 Devolviendo todos los productos borrados
8.17 Actualizando productos
8.18 Borrado suave de productos
8.19 Recuperando productos borrados
8.20 Creando stock-dto
8.21 Actualizando el stock de un producto
8.22 Incrementando el stock de un producto
8.23 Decrementando el stock de un producto
8.24 Documentando los endpoints de product
8.25 ApiResponse
8.26 Documentando dto
8.27 Creando el módulo Client
8.28 Creando client-dto
8.29 Creando client.entity
8.30 Creando address-dto
8.31 Creando address.entity
8.32 Relación OneToOne con typeorm
8.33 Crear cliente
8.34 Validar si existe o no el cliente
8.35 Validar la dirección
8.36 Obtener todos los clientes
8.37 Obtener un cliente por su id
8.38 Actualizar un cliente
8.39 Validar email al actualizar
8.40 Validando la dirección al actualizar cuando no tiene id
8.41 Validando la dirección al actualizar cuando tiene id
8.42 Borrando la dirección desreferenciada
8.43 Eliminar un cliente
8.44 Creando el módulo Order
8.45 Creando order-dto
8.46 Creando order.entity
8.47 Relación ManyToOne/OneToMany
8.48 Relación ManyToMany
8.49 Completando order-dto
8.50 Importando el módulo Cliente y Producto
8.51 Creando órdenes
8.52 Obtener una orden por su id
8.53 Obtener órdenes pendientes
8.54 Obtener órdenes confirmadas
8.55 ¡A tener en cuenta antes del próximo video!
8.56 Filtrando órdenes confirmadas (parte 1)
8.57 Filtrando órdenes confirmadas (parte 2)
8.58 Confirmando órdenes
8.59 Obtener órdenes de un cliente
8.60 Documentar dto
8.61 Documentar endpoints de clientes (parte 1)
8.62 Documentar endpoints de clientes (parte 2)
8.63 Documentar endpoints de órdenes

9. Instalar Oracle

9.1 Descargar imagen docker
9.2 Instalar SQLDeveloper en Windows

10. Conexión Oracle

10.1 Crear un usuario en Oracle
10.2 Creando nuestro proyecto
10.3 ¡Atención antes del siguiente video!
10.4 Adaptando el anterior proyecto
10.5 Probando el funcionamiento con Postman

11. Instalación de Mongo DB

11.1 Descargar imagen docker
11.2 Instalar MongoDB Compass en Windows
11.3 MongoDB en linux
11.4 Instalar MongoDB Compass en Linux
11.5 Seguridad MongoDB Linux

12. Conexión Mongo con mongoose

12.1 Resultado esperado
12.2 Creando nuestro proyecto
12.3 Instalando @nestjs/mongoose
12.4 Configuration
12.5 Creando nuestra configuración en ficheros env
12.6 Configurando nuestro entorno de desarrollo
12.7 Conectar con mongo usando los datos de la configuración
12.8 Creando el módulo Permissions
12.9 Creando permission-dto
12.10 Schema permission
12.11 Inyectando el servicio conexión de MongoDB en los permisos
12.12 Creando permissions
12.13 Obteniendo todos los permissions
12.14 Filtrando permissions por su nombre
12.15 Creando updated-permission-dto
12.16 Actualizando permissions
12.17 Borrando permissions
12.18 Documentando permissions
12.19 Creando el módulo Roles
12.20 Creando role-dto
12.21 Schema role
12.22 Inyectando el modelo de MongoDB en los roles
12.23 findPermissionByname
12.24 Creando roles
12.25 Obteniendo roles
12.26 Filtrando roles
12.27 Buscar roles por nombre
12.28 Actualizando roles
12.29 Añadiendo permissions al role
12.30 Borrando permissions al role
12.31 Borrando roles
12.32 Documentación de roles
12.33 Creando el módulo User
12.34 Creando user-dto
12.35 Schema User
12.36 Inyectando el modelo de MongoDB en los usuarios
12.37 Creando usuarios
12.38 Obtener un usuario por email
12.39 Obteniendo usuarios
12.40 Paginación de usuarios
12.41 Pipe greaterZero
12.42 Ordenación de usuarios
12.43 Obtener un usuario por usercode
12.44 Actualizando usuarios
12.45 Creando user-role-dto
12.46 Añadir un rol al usuario
12.47 Borrar un rol al usuario
12.48 Borrando usuarios
12.49 Obteniendo usuarios borrados
12.50 Obteniendo usuarios no borrados
12.51 Mejorando la parte de los GETs
12.52 Restaurando usuarios
12.53 Contar el número de usuarios con un rol
12.54 forwardRef
12.55 No borrar el rol si hay usuarios con ese rol
12.56 Documentación usuarios

13. Mongo Atlas

13.1 Creando una cuenta en Mongo Atlas
13.2 Preparando nuestro proyecto
13.3 Conectando Mongo Atlas con Mongo Compass
13.4 Adaptando nuestra conexión para Mongo Atlas
13.5 Probando nuestros endpoints

14. Autenticación

14.1 Resultado esperado
14.2 Creando nuestro proyecto
14.3 Configuración
14.4 Conexión MongoDB
14.5 Creando el módulo de users
14.6 Creando user-dto
14.7 Schema User
14.8 Inyectando el modelo de usuario
14.9 Creando usuarios
14.10 Encriptando contraseñas
14.11 Obteniendo usuarios
14.12 Obteniendo un usuario por su email
14.13 Poblar usuarios
14.14 Creando auth module
14.15 Mejorando la configuración
14.16 Creando auth-credentials-dto
14.17 Passport
14.18 Importando JwtModule usando nuestro secretKey
14.19 Estrategia JWT
14.20 Validar Token
14.21 Validar credenciales
14.22 Login
14.23 jwt.io
14.24 Protegiendo los endpoints del módulo user
14.25 Devolviendo datos del usuario logueado
14.26 Documentando nuestros endpoints
14.27 Añadiendo autorización a swagger

15. Subir Archivos multimedia

15.1 Resultado esperado
15.2 Creando nuestro proyecto
15.3 Creando nuestro módulo
15.4 MulterModule
15.5 Subir un archivo
15.6 Subiendo un archivo con Postman
15.7 Subir varios archivos a la vez
15.8 Limitando el tamaño de los ficheros
15.9 Solo subir imágenes
15.10 Mejorando donde almacenar los archivos
15.11 Cambiar el nombre de los ficheros al subirlos
15.12 Descargar un archivo
15.13 Documentando nuestros endpoints
15.14 Subir archivos en Swagger

16. Cron

16.1 Resultado esperado
16.2 Creando nuestro proyecto
16.3 Creando módulo cron
16.4 Instalando @nestjs/schedule
16.5 Crontab guru
16.6 Creando crons
16.7 Desactivando un cron
16.8 Instalando @types/cron
16.9 Activando un cron
16.10 Devolver todos los nombres de los crons
16.11 Desactivando todos los crons a la vez
16.12 Activando todos los crons a la vez
16.13 Documentando nuestros endpoints

17. Logs

17.1 Resultado esperado
17.2 Creación del proyecto
17.3 Reutilizando el proyecto anterior
17.4 Instalar Winston
17.5 Creando nuestro módulo Logger de forma global
17.6 Creando nuestro servicio
17.7 Formato de texto
17.8 Formato de fecha
17.9 Creando nuestros logger
17.10 Arrancando nuestro logger
17.11 Usando LoggerService
17.12 Instalar Winston rotate
17.13 Rotar logs por días
17.14 Usar console.log como logger

18. Emails

18.1 Resultado esperado
18.2 Creando nuestro proyecto
18.3 Creando nuestro módulo
18.4 Creando MessageDto
18.5 Validando el interior de un array
18.6 EmailConfig
18.7 Módulo dinámico
18.8 Instalar nodemailer
18.9 Creando un endpoint para enviar un email
18.10 Configurando nuestro módulo para enviar correos con Gmail
18.11 Configurar Gmail
18.12 Enviar correos con nodemailer
18.13 Testeo de envío de email
18.14 Configurando nuestro módulo para enviar correos con Outlook
18.15 Documentación

19. Microservicios

19.1 Resultado esperado
19.2 ¿Qué es un microservicio?
19.3 Creando nuestros proyectos
19.4 Instalar las dependencias necesarias
19.5 Creando los módulos necesarios en el backend 1
19.6 Creando los módulos necesarios en el backend 2
19.7 Creando nuestros microservicios
19.8 Creando la conexión de nuestros microservices
19.9 Creando un endpoint para mandar un mensaje
19.10 Patterns
19.11 MessagePattern (backend 1 al backend 2)
19.12 MessagePattern (backend 2 al backend 1)
19.13 Event (backend 2 al backend 1)
19.14 Event (backend 1 al backend 2)
19.15 Controlar el error en caso de que no haya conexión

20. MQTT Explorer

20.1 Instalar MQTT Explorer en Windows
20.2 Instalar MQTT Explorer en Linux

21. MQTT

21.1 Resultado esperado
21.2 ¿Qué es MQTT?
21.3 Creando nuestro proyecto
21.4 Creando módulo necesarios
21.5 Creando la conexión con MQTT (parte 1)
21.6 Creando la conexión con MQTT (parte 2)
21.7 Publicando un topic
21.8 Mejorando la visualización de datos
21.9 Creando mqtt-data-dto
21.10 Publicar un topic desde un endpoint
21.11 Recibir datos de un topic
21.12 Controlar errores

22. Despliegue

22.1 Compilando nuestra aplicación
22.2 Copiar ficheros al compilar con copyfiles
22.3 Instalando dependencias
22.4 Ejecutando nuestra aplicación compilada
22.5 Instalando pm2 y ejecutando nuestra aplicación

próxima convocatoria

Prepárate para transformar tu carrera este 28 de abril

Fernando Ureña TrainingIT

Fernando Ureña

Programador con 7 años de experiencia en varias tecnologías, especializado en Angular.

Me adapto a las necesidades de cada proyecto, con iniciativa y me encanta la formación.

Voy por el camino de la informática aprendiendo y quiero compartir poco a poco los conocimientos que adquiero para ayudar a la gente con los problemas técnicos que puedan surgir.

Solo soy una persona más de este mundo que quiere aportar su granito de arena, para ayudar a los demás en lo que pueda. Me encanta el tema de la formación y poder ayudar a los demás.

Próxima convocatoria: 28 de abril

El precio original era: 375,00 €.El precio actual es: 300,00 €.

Descuento

IVA no incluido

Solo para cursos bonificados a través de Fundae. El coste de la gestión es de un 10% más iva y este importe también es bonificable. Pendiente de validación por TrainingIT

De nuestro profesor

Cursos que te pueden interesar

Nuestras

Preguntas frecuentes

Quiero bonificar el curso pero en mi empresa NO sabe cómo hacerlo

Podemos encargarnos, no te preocupes. Tiene un coste de un 10% sobre el importe del curso. Y este importe también es bonificable.

En este caso ponte en contacto con nosotros y te haremos llegar toda la documentación del curso para que podáis dar de alta la acción y grupo formativo.

Ofrecemos dos certificados:

Alumnos que bonifican el curso:
Certificado de asistencia al curso: para obtener este certificado debes haber completado el 75% del curso.
Certificado de aprovechamiento: Si has completado el curso y has realizado todas las pruebas prácticas del curso, y la media de tu calificación es igual o superior a 6.
Todos los alumnos:
Insignia de participación: si realizas el curso completo pero tu nota en los ejercicios del curso es inferior a un 6.
Insignia de aprovechamiento: si realizas el curso completo y tu nota en los ejercicios del curso es igual o superior a 6.

Los cursos están pensados entre dos fechas, para tener disponible al profesor y resto de alumnos para resolver dudas. Si no lo terminas a tiempo, seguirás teniendo acceso a la plataforma con todo el material disponible. Sin embargo, no tendrás a los profesores a tu disposición, aunque sí a otros alumnos que puedan estar en tu misma situación. Los alumnos que bonifiquen el curso tendrán que completarlo en los plazos especificados, al menos con un 75% de las actividades del curso completadas, y unos tiempos de conexión a la plataforma acordes a los tiempos de dedicación del curso. De no ser así no se podrá aplicar bonificación sobre el curso.

Lamentablemente no. Sólo pueden bonificar los cursos tus empleados si los tienes. Ponte en contacto con nosotros y te ofreceremos un descuento.

Si, una vez finalice el curso podrás seguir accediendo a los materiales del mismo. Pero los profesores ya no atenderán el curso.

No supone ningún problema. Si estás contratado por una empresa española, y tienes contrato en España podrás bonificar el curso igualmente. Si no es tu caso podrás realizar el curso por tu cuenta.

formación bonificada

Simplificamos la gestión de tu formación 100% bonificada

El precio original era: 375,00 €.El precio actual es: 300,00 €.

Descuento

Solo para cursos bonificados a través de Fundae. El coste de la gestión es de un 10% más iva y este importe también es bonificable. Pendiente de validación por TrainingIT

Contáctanos

¿Tienes alguna duda acerca del curso?
Escribe tu mensaje y en breve nos pondremos en contacto para solucionar tus dudas.

¿Aún no te has decidido?

Subscríbete a nuestra newsletter.

Novedades, recursos para desarrolladores, noticias, promociones... y obtén un descuento de un

10%

para el próximo curso que realices.