Node.js 在Heroku上自定义NodeJS部署过程
我正在构建使用MongoDB并部署到Heroku的NodeJS应用程序。 我正在使用,希望在部署过程中运行migration命令 我该怎么做Node.js 在Heroku上自定义NodeJS部署过程,node.js,heroku,deployment,Node.js,Heroku,Deployment,我正在构建使用MongoDB并部署到Heroku的NodeJS应用程序。 我正在使用,希望在部署过程中运行migration命令 我该怎么做 我应该放弃构建包还是有更简单的方法?有更简单的方法 当您的应用程序部署到Heroku时,Heroku正在执行npm install-production来安装所有依赖项。完成后,将执行postinstall脚本。您可以在package.json文件中定义安装后脚本。在这个脚本中,您可以运行迁移 下面是我在基于我的项目中使用的一个片段。这将在部署到Herok
我应该放弃构建包还是有更简单的方法?有更简单的方法 当您的应用程序部署到Heroku时,Heroku正在执行npm install-production来安装所有依赖项。完成后,将执行postinstall脚本。您可以在package.json文件中定义安装后脚本。在这个脚本中,您可以运行迁移 下面是我在基于我的项目中使用的一个片段。这将在部署到Heroku时执行grunt构建和grunt发布,否则将执行npm安装
{
..
"scripts": {
"postinstall": "./node_modules/grunt-cli/bin/grunt build && ./node_modules/grunt-cli/bin/grunt release"
},
..
}
在您的情况下,使用以下值创建postinstall。/node_modules/east/bin/east migrate。这将在Heroku上执行迁移。您应该确保east列在dependencies中,而不是devDependencies中,因为Heroku没有安装devDependencies。您也不能在postinstall脚本中使用任何全局依赖项,因为您的依赖项从未使用默认的buildpack全局安装在Heroku上