Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 在Dokku中以生产模式部署nodeJS应用程序_Node.js_Angular_Dokku - Fatal编程技术网

Node.js 在Dokku中以生产模式部署nodeJS应用程序

Node.js 在Dokku中以生产模式部署nodeJS应用程序,node.js,angular,dokku,Node.js,Angular,Dokku,当我通过Git将nodeJS应用程序部署到Dokku时,它会运行以下命令: -----> Build Running build > my-project-name@0.0.0 build /tmp/build > ng build 这是一个Angular应用程序,我希望它以生产模式构建,即:ngbuild--aot--prod 如何影响Dokku构建阶段运行的命令 以下是我的包.json的脚本部分: "scripts": { "ng": "n

当我通过Git将nodeJS应用程序部署到Dokku时,它会运行以下命令:

-----> Build
   Running build

   > my-project-name@0.0.0 build /tmp/build
   > ng build
这是一个Angular应用程序,我希望它以生产模式构建,即:
ngbuild--aot--prod

如何影响Dokku构建阶段运行的命令

以下是我的
包.json的
脚本部分:

  "scripts": {
    "ng": "ng",
    "start": "node server.js",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  }, 
我已经尝试在上面添加了
“postinstall”:“ng build--aot--prod”
。这确实在安装之后运行了正确的命令,但是构建阶段开始了,它再次运行
ng build
(因此覆盖了生产)


也许我可以更改
“build”:“ng build”
以添加
--aot--prod
-但我不确定在本地运行我的节点应用程序时会产生什么效果,我永远不想在本地运行
--prod

您可以在本地计算机中运行
ng build--aot--prod
,然后提交dist文件夹(将其从.gitignore中删除)。 然后在项目的根文件夹上创建一个名为“.static”的空文件

然后在dokku服务器上运行:

dokku配置:设置您的AppName NGINX\u ROOT=dist BUILDPACK\u URL=

然后运行“git push dokku master”


使用这种方法,您不必担心package.json脚本。

有趣的方法!谢谢,我会尝试一下。很好!我很高兴它对您有用!:D