如果您需要从Git拉取代码,并在单台ECS上完成本地的构建与部署,您可以参见本文档完成本地构建与部署。
本模板主要用于单台ECS本地部署的场景,如果需要把构建产物发布到仓库或者部署到多台ECS,请参考其他相应的示例模板。
前提条件
您已创建ECS实例,更多信息,请参见实例创建方式介绍。
ECS实例需要有公网,更多信息,请参见为ECS实例开通公网。
步骤总览
下图展示了该示例模板的两个步骤:
第一步:由您指定代码源,比如OSS对象存储或者git,OOS将为代码源生成临时链接,用于后续拉取。
第二步:自动拉取代码,并执行构建和部署的脚本。
使用示例
本示例使用了一个Spring Boot的示例项目代码来演示,代码已上传到gitee和github仓库,如果想要使用,请先fork到自己的仓库。代码地址:
gitee:gitee示例代码(中国内地建议使用gitee)
github:github示例代码
以下演示是在Alibaba Cloud Linux 3.2104操作系统下,不同环境可能会相关的构建部署命令不同,请按需调整。
创建模板
从系统运维管理控制台 ,单击创建模板。
选择单ECS本地构建部署(git代码源)示例模板,单击下一步。
单击全部收起,可以看到该模板的步骤。
单击全部展开,开始填写模板。
指定您的代码源。为下一步骤拉取代码,生成一个临时链接。
本示例以gitee为代码源,在填写所有者、组织、仓库前,请先完成授权。
授权后选择您想要拉取的代码仓库(如果您之前已经fork示例代码,您只需下拉仓库,会自动展示您账号下所有仓库,请选择fork的示例代码仓库),后续执行模板时,OOS会生成该仓库的临时链接,并作为任务输出authorizedUrl,给后续任务使用。
拉取代码构建并部署应用。选择您想要构建并部署的ECS,代码源选择git,代码源链接引用了上一个任务的输出authorizedUrl,该示例的构建部署脚本里面,先安装了Maven,然后打JAR包,最后运行Spring应用(本文是在Alibaba Cloud Linux 3.2104操作系统下以Java应用程序为例,构建部署脚本您可按需换成适合自己项目的,这里仅是提供一个示例)。
说明这里的代码会被拉取到一个文件夹下(如下图),构建部署脚本也会已该文件夹为工作路径,如果需要切换到其他路径,请在脚本中完成。
填写完毕,点击创建模板,完成创建
执行模板
在自定义任务模板页面找到刚才创建的模板,点击创建执行,即可执行该模板。无需配置参数,单击下一步:确定。
等待执行成功后,请前往ECS控制台,找到您选择的ECS实例,远程连接进入ECS。执行以下命令。
curl http://localhost:8080/hello
看到返回字段,即表明部署成功。