pau*_*man 1 node.js gruntjs ibm-cloud
我有一个令人兴奋的Node应用程序,我想从Heroku托管到Bluemix.这有点复杂,部署运行各种任务,由我的package.js文件的一部分启动:
"scripts": {
"start": "node app.js",
"postinstall": "grunt heroku"
},
Run Code Online (Sandbox Code Playgroud)
这个咕噜咕噜的任务开始在我的Gruntfile.js文件中找到依赖的谈话,比如拉动Bower包,缩小图像,浏览器,移动,文件,清理等.
我想我可以在推送到Bluemix时启动部署任务?如果是这样,它们是否会以类似的方式完成(脚本部分中的命令package.json)来运行我定义的任务Gruntfile.js?
在heroku中,我的整个git repo将被复制到他们的远程,所以一切都在那里,而不仅仅是运行脚本产生dist目录的输出,我认为在Bluemix上会是一样的吗?
最后,在我的包文件中,我将定义npm和节点版本:
"engines": {
"npm": "2.5.1",
"node": "0.12.0"
}
Run Code Online (Sandbox Code Playgroud)
和Heroku将确保它运行特定于我的实例的版本.Bluemix是否相同?
非常感谢你!保罗
在Bluemix中,npm install运行该命令以安装依赖项.这将启动grunt heroku该postinstall部分中的任务.请注意,您的devDependencies下载不会被删除.如果您的grunt任务需要它们,则可能需要将它们移动到该dependencies部分.
是的,您推送的整个应用程序存储库将在Bluemix上复制,类似于Heroku.
您现在可以指定节点和NPM引擎,就像您在其中一样package.json.
过时的: 您当然可以指定节点引擎,就像您在示例中所拥有的那样.但是,NPM版本目前不可配置,而是由Node.js运行时中打包的内容提供.