持续集成DevOps
当今的软件开发趋势是微服务架构和 DevOps,这两种技术在软件开发和运维方面都有很多好处。将 HiMind工业互联网平台与 DevOps 结合,可以为软件开发团队带来以下好处:
- 更快的交付:通过使用 DevOps 工具,可以将软件开发的过程自动化,例如构建、测试、部署等。这可以使软件开发团队更快地交付产品,从而更快地满足客户的需求。
- 更高的质量:DevOps 自动化工具可以在每个阶段检查代码和构建的质量,例如代码质量、单元测试覆盖率、安全性等。这可以减少错误和缺陷,提高软件的质量和可靠性。
- 更高的可靠性:使用 DevOps 工具可以自动监控系统,及时发现和解决问题,减少系统停机时间和故障。这可以提高系统的可靠性和稳定性。
- 更好的团队协作:使用 DevOps 工具可以提高团队的协作效率,例如版本控制、自动化构建、自动化测试等。这可以使团队成员更好地合作,共同完成项目。
更高的安全性:使用 DevOps 工具可以在整个开发和部署过程中加强安全性,例如代码审查、漏洞扫描、安全测试等。这可以减少安全漏洞的风险,提高系统的安全性。
Azure DevOps方案
Azure DevOps 是微软推出的一站式 DevOps 平台,提供从代码托管到应用部署的全流程服务。与自行搭建 Jenkins 等工具链相比,Azure DevOps 采用 SaaS 服务模式,无需维护基础设施,团队可开箱即用,专注于业务交付。HMX 工业互联网平台基于 .NET 10 技术栈,与 Azure DevOps 天然集成,可快速落地持续集成与持续部署能力。

Azure DevOps 由五个核心功能模块组成,覆盖软件交付全生命周期:
| 功能模块 | 英文名称 | 说明 |
|---|---|---|
| Azure Repos | 代码仓库 | 支持 Git 分布式版本控制,提供 PR 审查、分支策略等能力 |
| Azure Pipelines | 流水线 | CI/CD 核心组件,支持 Windows、Linux、macOS 等多平台构建 |
| Azure Boards | 工作项管理 | 需求、任务、缺陷、迭代规划等敏捷项目管理功能 |
| Azure Artifacts | 制品管理 | 统一管理 NuGet、npm、Maven、Python 等软件包 |
| Azure Test Plans | 测试管理 | 手工测试、探索性测试、持续测试等质量保障能力 |
*作为一站式解决方案,强烈推荐团队使用!**

Jenkins方案

Jenkins 本身不提供代码托管功能,需要与外部 Git 代码库配合使用。根据企业的部署环境和网络条件,可以选择 自建代码库 或 在线代码托管平台 两种方案。
| 部署方式 | 推荐方案 | 适用场景 |
|---|---|---|
| 自建代码库 | Gitea | 内网环境、数据安全要求高、需完全自主可控 |
| 在线代码库(国内) | CNB、Gitee | 公网环境、团队分布全国各地、希望免运维 |
| 在线代码库(国外) | GitHub、GitLab | 国际化团队、开源项目、已使用相关生态 |
推荐Gitea ,他是一款轻量级的自建 Git 服务,采用 Go 语言开发,资源占用低(约 500MB 内存),功能完善,非常适合中小企业内部部署。
| 优势 | 说明 |
|---|---|
| 轻量高效 | 单二进制文件即可运行,树莓派也能流畅运行 |
| 部署简单 | Docker 一条命令启动,5 分钟完成部署 |
| 功能完善 | 支持仓库托管、Issue/PR、Wiki、Webhook、Package Registry(NuGet/npm/Docker) |
| API 丰富 | 提供 Swagger 格式的 REST API,与 Jenkins 无缝集成 |
| 国产化适配 | 支持麒麟、统信等国产操作系统及龙芯、鲲鹏等国产 CPU |
| 场景 | 推荐方案 | 理由 |
|---|---|---|
| 公司内网环境,数据安全要求高 | Gitea(自建) | 完全自主可控,资源占用低 |
| 公有云部署,团队在国内 | CNB / Gitee | 国内访问速度快,免运维 |
| 国际化团队,已使用云原生技术 | CNB(云原生) | 与 K8s、容器化天然集成 |
| 开源项目或已有 GitHub 生态 | GitHub | 社区活跃,生态完善 |
| 需要一体化 DevOps 平台 | GitLab | CI/CD、容器仓库、安全扫描功能全面 |
