首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >多个dockerfile和1个package.json的模式

多个dockerfile和1个package.json的模式
EN

Stack Overflow用户
提问于 2022-11-16 01:40:25
回答 1查看 48关注 0票数 0

说我有这个:

代码语言:javascript
运行
复制
project/
   app1/Dockerfile
   app2/Dockerfile
   app3/Dockerfile
   package.json

每个应用程序都可能使用package.json中依赖项的子集。是否有好的方法为每个子应用程序创建一个精简版本的package.json文件?

我意识到我不清楚问题是什么-问题是每个Dockerfile (每个项目)不需要package.json中的所有依赖项,实际上它们可能只使用了20%或更少的依赖项。因此,为了缩小对接图像的大小,我们可能需要一种覆盖package.json的方法,如下所示:

代码语言:javascript
运行
复制
  project/
       app1/
          Dockerfile
          dependencies.json
       app2/
          Dockerfile
          dependencies.json
       app3/
          Dockerfile
          dependencies.json
       package.json

其中,dependencies.json从package.json中声明依赖项的子集,例如:

代码语言:javascript
运行
复制
{
  dependencies: ['foo', 'bar', 'baz']
}

或者更有趣的是:

代码语言:javascript
运行
复制
{
   antiDependencies: ['foo', 'bar', 'baz']
}

不安装的依赖项或其他不安装的依赖项。

EN

回答 1

Stack Overflow用户

发布于 2022-11-26 06:00:45

(未经测试的解决方案)

我认为一个潜在的解决方案就是完全按照OP中的做法:

代码语言:javascript
运行
复制
// package.js

const pkgJson = require('../../package.json')

module.exports = Object.assign({}, pkgJson, {

    dependencies: {
       ...pkgJson.dependencies,
       // eliminate these:
       heavyDep: undefined,  
       anotherHeavyDep: undefined
   }

});

这不是一个很好的解决方案b/c它是动态的,但可能会使球滚动。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74454194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档