“捆绑”后端(节点)和前端(Angular)应用程序合二为一,用于生产[关闭]

问题描述 投票:1回答:1

我有一个由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应用程序。现在,它们已部署在生产环境中的两个单独的文件夹中...

node.js angular gulp
1个回答
1
投票

使用ng build来构建您的应用程序,并将dist文件夹的所有内容放入cargo-folder内容内。要从节点服务器提供货运内容文件夹,请使用以下链接作为参考。

© www.soinside.com 2019 - 2024. All rights reserved.