从 Heroku 上的子目录运行 npm
Posted
技术标签:
【中文标题】从 Heroku 上的子目录运行 npm【英文标题】:Run npm from subdirectories on Heroku 【发布时间】:2014-01-10 14:04:43 【问题描述】:我有一个包含 2 个子项目的项目:
首先是 API 二是客户端并且这两个项目都有自己的依赖关系映射在各自的packages.json
文件中,这些文件被放置在每个子目录中。
那么问题是如何从 heroku 上的子目录运行npm install
?
我尝试在主 npm 文件中添加这样的内容
"scripts":
"postinstall": "cd my_subdir; npm install"
但是不行,显示can't cd to my_subdir
【问题讨论】:
为什么不为每个项目创建一个单独的 Heroku 应用? 客户要求将其部署到单个子域 我不确定我是否理解这意味着什么。两者都在同一个域中,而在 Heroku 中,您只有一个web
进程,所以……它们中的哪一个?你能描述一下你的想要的部署拓扑(什么在哪里运行,监听什么端口,什么协议,和谁通信?)
【参考方案1】:
利用 npm 的 --prefix
选项:
"scripts":
"postinstall": "npm install --prefix ./my_subdir"
【讨论】:
以上是关于从 Heroku 上的子目录运行 npm的主要内容,如果未能解决你的问题,请参考以下文章
Heroku 上的 webpack 和 django:collectstatic 之前的捆绑
停止 Heroku 运行 npm start + 运行啥来代替?
将文件存储在 heroku Rails 上的目录 tmp 中
Mac 上的 Node.js Heroku 部署 - sh: 1: nodemon: not found / npm ERR! `nodemon fileName.js`/npm 错误!在...启动脚