Bamboo - Angular 4 应用程序如何部署

Posted

技术标签:

【中文标题】Bamboo - Angular 4 应用程序如何部署【英文标题】:Bamboo - Angular 4 app How to deploy 【发布时间】:2017-09-27 18:17:42 【问题描述】:

如何在竹子上部署我的 Angular 4 应用程序?

我只是做了一个简单的工作 1. 混帐 2.npm install 3.ng build

成功通过了,但接下来我应该做什么? 如何在服务器上部署它,我可以从浏览器进入应用程序?

我试图在tomcat上部署这个,但我没有任何战争。

我不知道该怎么办

【问题讨论】:

如果你的项目只是前端,没有必要部署到Tomcat。你可以让它为像 Apache 这样的 HTTP 服务器提供服务。 @Matt 如何启动服务器?我没有在任务列表中看到它 你不需要重启服务器,因为它是静态内容。 如果您确实需要重启,而 Bamboo 没有为该特定操作提供自定义任务,您可以通过脚本和 ssh 轻松完成。 service httpd restart 【参考方案1】:

以下是我用来设置 Bamboo 部署计划的任务:

    源代码检查任务:这是 Bamboo 中的标准任务,如果您将源代码存储库提供给它以进行部署(更多信息请参阅:https://confluence.atlassian.com/pages/viewpage.action?spaceKey=BAMBOO0603&title=Checking+out+code

    NPM 任务:使用此命令 cache clean -f 清除服务器节点模块的缓存,如果不这样做可能会导致权限问题(更多信息请参阅:https://confluence.atlassian.com/bamboo/getting-started-with-node-js-and-bamboo-687213472.html#GettingstartedwithNode.jsandBamboo-npmtask 和 Npm Please try using this command again as root/administrator)

    NPM 任务:使用此命令i 为当前项目在服务器上安装/刷新所有 node_modules

    NPM 任务(可选):使用此命令i -g @angular/cli 在服务器上安装/更新 angular-cli。如果您担心锁定源版本,您可能希望也可能不希望每次都这样做。

    NPM 任务:使用此命令run ng build 构建(转译)您的源代码(es5 兼容性等)

    脚本配置任务:运行此命令xcopy "$bamboo.build.working.directory\..." "[some output directory goes here]" /E /Y(有关脚本配置任务的更多信息,请参阅:https://confluence.atlassian.com/display/BAMBOO0603/Script)

可能还有其他任务用于运行测试等,但以上内容可以帮助您入门。

【讨论】:

【参考方案2】:

有多种选择。如果您真的想坚持使用 Tomcat,则可以提供静态文件 - 它涉及编辑 Tomcat 配置文件以指定上下文根文件夹,然后您只需将竹中生成的静态文件复制到该文件夹​​即可。您是正确的,您不能使用 Bamboo 中的 Tomcat 任务来执行此操作,因为这是特定于战争部署的,它只是一个 SCP 或 Shell 任务。您可以从 Tomcat 搜索服务静态文件以了解如何执行此操作。

或者,您可以构建一个包含静态文件的战争,这是我在工作地点看到的最常做的事情。您可以将 maven 添加到您的项目中来完成此操作,或者使用 gulp 或类似的基于 js 的工具来完成。

或者平方,在本地使用不是 java 容器的 web 服务器,并且对静态内容更友好 - 例如 nginx。这消除了建立战争的需要。如果它是远程服务器,则部署到此可能是 SCP 任务,而不是特定于该服务器类型(apache、nginx 等)的自定义竹子任务

【讨论】:

对 IIS Web 服务器@Jim 的任何建议 mmmm,不 - 我不太了解 IIS / .NET 世界,但是 - 我确实在 Atlassian 社区看到了这篇文章:community.atlassian.com/t5/Answers-Developer-Questions/…

以上是关于Bamboo - Angular 4 应用程序如何部署的主要内容,如果未能解决你的问题,请参考以下文章

如何参数化 Bamboo 构建?

如何在 Spring Boot 中读取 Bamboo 元数据

Bamboo + Android + Gradle:如何生成签名的apk?

如何使用 Bamboo 开始 Play 而无需永远继续部署?

如何配置从 BamBoo 到 CloudControl 的持续部署 [关闭]

如何让 Bamboo 文物收集整个文件夹?