将nodejs应用程序部署到bluemix时如何指定npm版本?

2024-04-06

我创建了一个 Node.js 应用程序,其运行时依赖项为作用域包 https://docs.npmjs.com/misc/scope in my package.json:

"dependencies": {
    "@shawnzhu/mybot" : "latest",
    ...
},
"engines": {
    "npm": ">2.0.0",
    "node": "0.10.38"
},

我也有一个习惯.npmrc那点范围@shawnzhu到我的私人 npm 注册表。

目前,它在部署到 heroku 时可以工作,并将 npm 升级到 v2.7.x。然而,一个cf pushbluemix 失败,控制台输出显示:

registry "@shawnzhu/mybot" not found.

查看整个控制台输出后,我意识到它使用npmv1.4.28 不支持作用域包。

如何在 bluemix 的 Node.js 应用程序中获取 npm v2.0.0+?


2015 年 6 月 15 日之前:使用 Bluemix 上的默认 Node.js 构建包尚无法实现这一点。目前,您可以使用社区开源 Node.js 构建包:

cf 推送 mynodeapp -bhttps://github.com/cloudfoundry/nodejs-buildpack https://github.com/cloudfoundry/nodejs-buildpack

您已在 package.json 中正确指定了 npm 版本,因此它应该适用于社区构建包。

2015年6月15日之后:最新版本的 IBM Node.js Buildpack 现已在 Bluemix 上提供!您可以在以下位置查看完整的更改:https://developer.ibm.com/bluemix/2015/06/15/bluemix-node-js-buildpack-update/ https://developer.ibm.com/bluemix/2015/06/15/bluemix-node-js-buildpack-update/

该构建包能够通过在 package.json 中包含“npm”条目来指定 NPM 版本,如下所示:

"engines": {
    "npm": "xxxxxxx"
},
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将nodejs应用程序部署到bluemix时如何指定npm版本? 的相关文章

随机推荐