全部产品
阿里云办公

在云效中发布应用到EDAS平台

更新时间:2018-12-10 09:44:55

EDAS 作为阿里巴巴分布式服务架构的核心产品,涵盖了应用生命周期管理、服务运维管控等众多功能。越来越多的用户开始将EDAS作为企业的PASS平台,进行应用的管理和运维。EDAS虽然在应用应用运维方面有着丰富的功能,但是从代码到部署这个环节功能是缺失的。而云效作为研发一体化协作平台,集成了EDAS的应用创建和部署功能。作为EDAS的用户,可以很方便的将整个应用的开发运维都放置到云效平台上来。

注意:在使用云效时,当前登陆者的阿里云账号需要有权限访问EDAS服务的相应权限。EDAS提供了多种部署能力,云效目前只支持基于war包和jar包的部署,不支持镜像部署

创建云效应用和流水线

如果你在云效中还没有应用和流水线,先按以下步骤来创建应用和流水线。

首先,EDAS用户需要在云效平台创建应用和流水线。可以使用云效首页的自定义配置来快速实现。访问https://my.rdc.aliyun.com/welcome 并点击自定义配置。

应用基本信息

在云效中我们使用应用管理一个应用程序以及其相关的所有发布过程,应用需要归属于某一个特定的项目,如下所示:1

当前选择的开发模式是自由模式,在自由模式中用户可以使用任意的分支进行打包,发布等操作。

关于自有模式和分支模式的区别读者可参考:开发模式概述

配置代码库

通过内置的代码托管服务在创建应用的过程中云效可以自动准备应用相关的代码仓库,对于以有代码的项目用户也可以选择管理已有代码仓库:2

云效目前支持自有的代码托管服务以及码云,用户可以根据自己的情况选择

使用应用模板

根据编程语言和部署方式来选择合适的应用模板。对于新建的代码库可是直接使用云效内置的代码模板生成代码库方式。云效目前内置了Java,Nodejs,PHP,Python以及Go语言等的支持。这里我们选择EDAS部署,可以选择spring mvc框架的应用模板如下所示:3

构建配置

这一步骤中配置的内容以<应用名>.release文件的方式写入到代码库中,在代码生成之后用户也可以直接修改该文件。info

关于build.release文件的详细内容可以参考:Release文件配置键的完整列表

应用信息预览

如下所示,展示应用的所有信息:4

确认无误后,点击【确定创建应用】按钮,系统将会开始创建应用

应用创建完成

如下所示,云效会自动根据配置导航的内容创建生成代码仓库以及应用和流水线:6

调整release文件

创建好代码库后,我们要对代码库中的应用名.release文件进行少许调整,配置云效不对构建物进行压缩。云效默认会将build.output所指示的war包或者jar包再打成tgz包,而EDAS接受的是war包或者jar包。所以需要在<应用名称>.release文件中进行如下配置,使得云效不再打包。配置示例如下:

  1. ...
  2. # 打包的产物为target/xxx.war
  3. build.output=target/xxx.war
  4. # 不要再对 build.output 指定的输出物再进行打包
  5. build.output.nottgz=True
  6. ...

一个完整的release文件的例子假设应用名为edas-app。

edas-app.release:

  1. code.language=oracle-jdk1.9
  2. build.output=target/edas-app.war
  3. build.output.nottgz=True

部署配置

创建好了应用和流水线以后,需要修改云效应用的部署配置,与EDAS应用关联起来。

undefined

点击左侧的应用菜单,并选取刚创建的应用,进入应用的配置页面。

undefined

点击环境配置按钮,进入环境配置页面。

undefined

我们以配置日常环境的部署配置作为示例。点击日常环境的部署配置按钮。

undefined

如果你在EDAS中还没有创建应用,可以在这页面直接创建一个EDAS普通应用,并与当前环境关联起来。

undefined

输入相关信息后点击选择机器。

undefined

然后点击创建并关联EDAS应用按钮,完成部署配置。

如果你想创建docker应用,点击切换至创建Docker应用按钮,进行docker应用的创建,整个流程和创建普通应用基本相同。

如果你在EDAS中已经有了应用,可以点击切换至关联已有应用按钮,关联EDAS的现有应用。undefined

EDAS应用ID可以从EDAS应用详情页面获取:https://edas.console.aliyun.com/#/detail/xxxxxxx/basicInfo.info。 如图:

undefined

这样你的当前环境已经与EDAS应用关联起来,就可以通过流水线将应用发布到EDAS平台。

如果部署过程中遇到问题,可以按https://help.aliyun.com/document_detail/59305.html 中的提示进行排查。