打字稿共同子项目

时间:2018-06-25 14:56:59

标签: javascript typescript docker nestjs

我们的项目由多个NestJS微服务组成,这些微服务使用相同的配置和实用程序类(领事,elasticsearch,winston logger等)。

我们希望将这些类分组在所有微服务都可见的公共库中,并且我们不想将此库发布在npm存储库中。我们还使用Dockerfiles构建每个微服务,因此在构建具有多个文件夹的过程中遇到Docker上下文问题。

我们如何使用这些约束创建公共库?

实际结构:

- microservice-users
   - core
      - consul
      - elasticsearch
      - winston
      - ...
   - users
      - controllers, services, models, ...
   - package.json
   - Dockerfile

- microservice-projects
   - core
      - consul
      - elasticsearch
      - winston
      - ...
   - projects
      - controllers, services, models, ...
   - package.json
   - Dockerfile

所需结构:

- common-core
   - core
      - consul
      - elasticsearch
      - winston
      - ...
   - package.json

- microservice-users
   - users
      - controllers, services, models, ...
   - package.json
   - Dockerfile

Docker build命令:cd microservice-users && docker build -t microservice-users。

npm link命令不会在package.json中添加公共依赖关系,并且npm i --save ../common-core不适用于Docker上下文。

0 个答案:

没有答案