华为软开云~流水线自动部署之路

举报
星汉网络 发表于 2018/08/16 18:32:13 2018/08/16
【摘要】 接触到软开云的流水线功能,感觉十分高大上。但是一准备上手迁移项目,就遇到了几个难题,导致迟迟不能进行自动部署。终于,我们找到了解决的办法,这里和大家分享一下。【背景】使用Java进行项目开发,部署在Linux的Tomcat中。一台测试服务器,一台生产服务器。没有分布式。【遇到的问题】1、项目中,会产生很多缓存图片和文件。这些文件以文件夹的形式,存放在应用的根目录下。2、项目使用Log4j进行...

接触到软开云的流水线功能,感觉十分高大上。但是一准备上手迁移项目,就遇到了几个难题,导致迟迟不能进行自动部署。终于,我们找到了解决的办法,这里和大家分享一下。

【背景】

使用Java进行项目开发,部署在Linux的Tomcat中。一台测试服务器,一台生产服务器。没有分布式。

【遇到的问题】

1、项目中,会产生很多缓存图片和文件。这些文件以文件夹的形式,存放在应用的根目录下。

2、项目使用Log4j进行日志记录,日志文件也存放在应用的根目录下。

3、项目有部分配置文件,开发环境和部署环境有所区别,要修订部分参数。

以上三点,一旦自动部署,生成的war包,解压后,会全部删除历史数据。由于这个原因,迟迟未能自动部署,使用流水线的功能。

【解决方案】

1、现在的项目开发,所有文件(包含图片居多,还有excel等),全部上OBS进行存储,不再依赖于本地环境。

好处:不仅速度快,效率高,而且轻松的应对分布式环境。采购价格也非常合理。

2、log4j的日志,重新调整配置文件,将日志信息从应用中迁移出来,放入Linux的指定日志目录中。

好处:既方便查阅,probe也能采集到,同时对于应用本身,没有任何影响。

3、对于特殊的几个配置文件,先在服务器指定位置配置好。通过Shell部署的方式,在war解压完成后,再对指定目录中文件进行替换。

好处:不同的应用,可以采用不同的替换策略。shell部署,及其灵活,根据自己的需要进行书写。

image.png

【结果】

经过如上几步的操作,解决了开始遇到的问题,终于可以自动部署了。

image.png

也可以畅快的使用软开云的流水线功能了。

image.png

【后记】

通过进一步的接触使用华为的其他云产品,包括对象存储、云数据库、缓存服务等,结合着软开云 的项目管理、检查、发布和部署,极大提升了整个团队的开发效率,可视化效果极好。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

举报
请填写举报理由
0/200