incluso si parece una tarea simple, tengo algunos problemas para encontrar una solución. Sé que con Nest CLI puedo usar el comando "nest build" para crear una carpeta dist que contenga los archivos de producción de mi proyecto.
El problema es cuando muevo la carpeta en mi Raspberry e intento ejecutar el proyecto con el comando "node dist/main" siguiendo las instrucciones de NestJ. Nada comienza porque el nodo dice que no puede encontrar @nestjs/core y otros módulos.
No encontré nada claro en la guía oficial sobre la implementación de la aplicación, por lo que mi pregunta es: ¿qué necesito para pasar a mi rasperry además de la carpeta dist? ¿Necesito reinstalar toda la carpeta node_modules o es posible tener un proyecto en ejecución sin tener que reinstalar 800Mb de módulos?
Sí, necesita ejecutar yarn o npm install en su entorno de producción, ya que su carpeta dist solo contiene su propio código.
Porque a diferencia del lenguaje compilado como Golang, donde todas las dependencias se agrupan y compilan en su archivo ejecutable, los paquetes de Javascript no lo hacen. Su código incluido en dist aún contiene una instrucción require o import para obtener dependencias de node_modules .
También puede ejecutar npm prune --production para eliminar cualquier dependencia de desarrollo y, por lo tanto, reducir el tamaño de su carpeta node_modules . (Creo que yarn lo hace por defecto).