如何从单存储库构建 NestJs api
How to build a NestJs api from a mono repository
我正在做一个项目,我们将代码存储在 nrwl "managed" 的 monorepo 中。回购包含一对 angular 应用程序和一对 nestjs apis.
现在我们要对 api 进行 docker 化,以便能够将它们部署到我们的 kubernetes。
我可以通过调用 ng serve api1
来启动单个 api。我还可以通过 运行 ng build api1
构建单个 api。我遇到的问题是每个 api 都需要与它一起部署的完整 node_modules 文件夹。据我所知 angular 使用 webpack 来打包它的所有 depedencies。
有没有办法构建 NestJs api 并包含所有必需的 node_modules?
我们实际上刚刚发布了一种使用 NestJS 创建 monorepos 的本机方法,您可以在 Trilon 博客
上阅读有关 full announcement here 的更多信息
使用独立的 NestJS 应用程序,您现在可以简单地创建(另一个应用程序或库)并自动将其变成一个 monorepo 工作区。
# make sure you have the latest @nestjs/cli
npm i --g @nestjs/cli
# if you want to create an app
nest g app my-other-app
# library
nest g lib my-library
现在您将能够使用 nest build NAME
构建您需要的任何应用程序,并且所有 node_modules 等都将被正确捆绑,等等!
这个新的工作区设置将创建您习惯的命名约定:
# ** FROM
/src/ ... application code ...
# ** TO
/apps/
/nest-app/
/another-app/
/libs/
/some-shared-lib/
/ ... /
目前在 Nest 中设置 monorepos 的方式非常适合只有 nest/node 代码库的 monorepos。前端 monorepos 可以在其他地方单独保存,因为可以在 FE<>BE 之间共享的代码有限(只有一些没有装饰器的接口)。
希望对您有所帮助:)
我正在做一个项目,我们将代码存储在 nrwl "managed" 的 monorepo 中。回购包含一对 angular 应用程序和一对 nestjs apis.
现在我们要对 api 进行 docker 化,以便能够将它们部署到我们的 kubernetes。
我可以通过调用 ng serve api1
来启动单个 api。我还可以通过 运行 ng build api1
构建单个 api。我遇到的问题是每个 api 都需要与它一起部署的完整 node_modules 文件夹。据我所知 angular 使用 webpack 来打包它的所有 depedencies。
有没有办法构建 NestJs api 并包含所有必需的 node_modules?
我们实际上刚刚发布了一种使用 NestJS 创建 monorepos 的本机方法,您可以在 Trilon 博客
上阅读有关 full announcement here 的更多信息使用独立的 NestJS 应用程序,您现在可以简单地创建(另一个应用程序或库)并自动将其变成一个 monorepo 工作区。
# make sure you have the latest @nestjs/cli
npm i --g @nestjs/cli
# if you want to create an app
nest g app my-other-app
# library
nest g lib my-library
现在您将能够使用 nest build NAME
构建您需要的任何应用程序,并且所有 node_modules 等都将被正确捆绑,等等!
这个新的工作区设置将创建您习惯的命名约定:
# ** FROM
/src/ ... application code ...
# ** TO
/apps/
/nest-app/
/another-app/
/libs/
/some-shared-lib/
/ ... /
目前在 Nest 中设置 monorepos 的方式非常适合只有 nest/node 代码库的 monorepos。前端 monorepos 可以在其他地方单独保存,因为可以在 FE<>BE 之间共享的代码有限(只有一些没有装饰器的接口)。
希望对您有所帮助:)