共计 1754 个字符,预计需要花费 5 分钟才能阅读完成。
背景常识
通过以往几节课程的学习,置信大家对于 SAE 平台曾经有了肯定的理解。SAE 为客户罢黜了很多简单的运维工作,开箱即用、按用量付费;与此同时 SAE 提供了丰盛的 Open API,能够很容易地与其余平台做集成;相似云效以及 Jenkins 的 CI/CD 工具是麻利软件研发实际中的重要一环,能够自动化地将客户的代码编译、测试、打包并部署至各个环境,从而晋升团队的研发效率。
本篇文章分为两个局部,首先介绍应用云效平台实现从源码到 SAE 环境的继续集成,而后介绍应用 Jenkins 的状况下继续集成该如何配置。
应用云效部署到 SAE
云效(rdc.console.aliyun.com),是阿里云推出的企业级一站式 Devops 平台型产品,性能笼罩了从【需要 -> 开发 -> 测试 -> 公布 -> 运维 -> 经营】全流程。对云效感兴趣的同学能够去【阿里云官网】搜寻【云效】,本文只介绍与 CI/CD 相干的局部性能。
如上图所示,图的上半局部是咱们的配置流程,下半局部的流程图是咱们所要执行的继续集成流程的示例。云效首先会从代码仓库中拉取相应的代码,而后进行代码查看以及单元测试,接着是代码编译构建,这一步会产出相应的生成物:在这里咱们用一个 java 利用来举例,如果构建产出物这一步抉择是 jar 类型,那么流水线在运行时运行 mvn package 命令产出对应的 jar 包;如果构建产出物类型是 Docker 镜像,那么在构建这一步在产出 jar 包后会继续执行 docker build 命令来构建对应的 Docker 镜像并上传到您所抉择的 ACR 镜像仓库;流水线的最初两步是调用 SAE 的 Open API 将构建物(jar 包 /Docker 镜像)部署散发到测试环境,依据咱们事后的设置,在部署完测试环境这一步后流水线会停下来期待手动触发下一步操作;期待手动验证测试环境的部署一切正常后,手动触发流水线持续运行,这次将调用 Open API 部署到生产环境。
操作步骤:
- 首先确定代码的编译打包配置都正确,在本地能够失常地编译打包胜利,如果是镜像形式部署,那么会要求我的项目根目录下有对应的 Dockerfile 配置;
- 在 SAE 控制台中创立相应的利用,请留神如果有多环境部署需要,比方部署到 test(测试)、product(生产)环境,请先创立对应的 test 命名空间 以及 product 命名空间 并在 命名空间 中创立利用;
- 在云效中做好相应的配置,包含源码仓库配置及流水线配置,具体配置细节请参考相应的产品帮忙文档;
- 最初一步点击“运行”触发流水线执行编译部署;
应用 Jenkins 部署 SAE
Jenkins 是被业界宽泛应用的开源 CI/CD 平台,应用 Jenkins 能够将源码打包编译后部署至 SAE,其达成的最终成果与“通过云产品云效部署至 SAE”相似,通过 Jenkins 将利用源码编译成为 jar 包,而后通过 maven plugin 来调用 SAE 的 Open API 部署接口将利用部署至 SAE。
操作步骤:
- 代码库中有相应的打包配置,在应用 Jenkins 时咱们打包的产出构建物是 jar 包,所以此处要求咱们我的项目根目录下有对应的 maven 配置文件 pom.xml;
- 在部署之前须要在 SAE 平台中创立相应的命令空间、利用,并通过初始化部署来实现利用配置;
- 在 Jenkins 中实现相应 Docker 插件的配置,同时须要在 Jenkins 中创立并配置相应的 Project;Project 能够配置成手动触发或者配置成提交代码时触发编译及部署,具体配置请参考对应的产品帮忙文档;
部署过程演示, 请点击视频课链接观看:https://developer.aliyun.com/lesson_2026_19006
总结
看到这里,置信大家曾经学会了如何应用 CICD 工具将源码十分轻松地部署至 SAE 平台,心愿继续集成平台与 SAE 这个能够晋升研发效力的组合,帮忙您的业务疾速腾飞!
课程举荐
为了更多开发者可能享受到 Serverless 带来的红利,这一次,咱们集结了 10+ 位阿里巴巴 Serverless 畛域技术专家,打造出最适宜开发者入门的 Serverless 公开课,让你即学即用,轻松拥抱云计算的新范式——Serverless。
点击即可收费观看课程:https://developer.aliyun.com/learning/roadmap/serverless