javaweb k8s_阿里云部署K8Sweb项目

一、背景

如果你

1.使用Java进行开发

2.使用容器镜像的制品形式进行交付

3.制品最终会运行在阿里云ACK或者其他K8S集群上

那么本文档可以帮助您实现研发流程的协同自动化。

二、用户诉求

1.一般来说,使用K8S部署场景如下:

2.对源代码进行一定的质量检测,比如单元测试,代码扫描

3.将源代码构建成为可交付的制品,也就是容器镜像

4.对制品进行测试环境验证

5.使用完成验证的制品进行线上部署

6.使用基础设施即代码的方式,在代码库中管理与应用相关的所有yaml文件。使用这种方式,将k8s的编排能力完全交给开发,比较灵活,也更加利于DevOps的实施。

上述活动需要有不同角色的参与:开发、测试、运维。如何保证不同参与者可以使用统一的交付流程来进行协作,是云效Flow交付流水线要解决的主要问题。

三、云效解决方案

通过云效持续交付流水线和阿里云K8S很好的结合在一起,为应用的持续交付提供了很好的基础保障,如下图:

开发者提交代码变更到代码库,云效在监听着代码库的变动,一旦代码发生变化,将自动触发云效持续部署流水线一次构建任务的运行,包括代码检查、构建、测试部署、测试验证和生产部署等过程。其中,在构建完之后,生成Docker镜像,并自动上传至应用镜像仓库,在部署阶段(测试环境的部署和生产环境的部署)时,获取当前流水线实例构建出来的镜像版本,通过K8S进行容器编排部署。而这一切,

你可能感兴趣的:(javaweb,k8s)