软件构建/部署
软件构建/部署
软件开发生命周期,是一个包含了计划、开发、测试和部署过程的集合,本文档基于敏捷开发的思想,指导如何软件开发的快速迭代并交付高质量的软件。
构建/部署方式:
- 手动方式:效率低,容易出错。
- 自动方式:引入DevOps、持续集成流程,自动化的完成集成、构建、部署整个过程,下面将详细说明。
- 离线部署:针对医院等客户的信息系统通常运行于内网环境,无法通过自动化工具远程部署,将提供离线自动部署的方式。
DevOps方案
DevOps 是一系列做法和工具,可以使软件开发和运维团队之间的流程实现自动化。其中,随着敏捷软件开发日趋流行,持续集成 (CI) 和持续交付 (CD) 已经成为该领域一个理想的解决方案。在 CI/CD 工作流中,每次集成都通过自动化构建来验证,包括编码、发布和测试,从而帮助开发者提前发现集成错误,团队也可以快速、安全、可靠地将内部软件交付到生产环境。
- 方案1:基于Jenkins的CI/CD平台
Jenkins是一个开源的自动化构建与集成工具,拥有丰富的插件可以与几乎所有编程语言和构建工具集成,具体使用可以参考本文档Jenkins相关内容。
- 方案2:基于KubeSphere容器平台
KubeSphere是一个基于Kubernetes(K8S)的容器管理平台,提供可视化的容器集群管理,其DevOps相关功能可以支持将应用直接发布成容器运行。具体使用可以参考:K8S容器平台