我有一个由Node提供的简单REST后端以及一个与之通信以管理业务逻辑的Angular 9应用程序。现在,它们被部署在生产服务器上的两个单独的文件夹中:
/opt/git/cargo-backend Node application
/var/www/cargo-frontend Angular application
出于技术原因(客户有一台带有Plesk控制面板的新服务器),后端和前端编译源都应一起“捆绑”到一个新的Git项目中,以便上传该应用程序的新版本,客户必须从其Plesk面板执行git pull
。部署的应用程序的文件夹结构应如下所示:
/
... bin/
... config/
... db/
... FRONTEND/ ---> The compiled Angular app should go in here
... middleware/
... node_modules/
[etc]
... app.js
... package.json
如您所见,基本上,这是带有文件夹(FRONTEND
)的后端源,其中包含Angular编译代码。我的想法是用一个脚本创建一个新的Git项目,该脚本将复制Node文件夹(没有node_modules),并将编译Angular应用程序并将结果文件复制到FRONTEND
子文件夹。我正在考虑使用Gulp
或什至是bash脚本,但是如果有人遇到相同的情况,我想获得一些想法。
编辑
最后,我选择使用Git 子模块。现在,FRONTEND
文件夹是指向已编译的Angular应用程序存储库的子模块,因此我可以使用单个git pull --recurse-submodules
部署后端-前端。
有什么建议吗?预先感谢!
我有一个由Node提供的简单REST后端以及一个与之通信以管理业务逻辑的Angular 9应用程序。现在,它们已部署在生产环境中的两个单独的文件夹中...
使用ng build来构建您的应用程序,并将dist文件夹的所有内容放入cargo-folder内容内。要从节点服务器提供货运内容文件夹,请使用以下链接作为参考。