2017 年微软 Connect(); 开发者会议上,微软宣布了 Azure DevOps Projects的公开预览版,用户只需简单三步即可开始在任何 Azure 服务上运行应用程序。7 月 12 日,Azure DevOps Projects 在 Azure 门户中正式发布,开发人员可以更轻松地在 Azure 云中部署,并使用预先配置的资源和最佳实践创建 CI/CD 管道。
Azure DevOps Projects 的功能
自宣布 Azure DevOps Porjects 以来,微软一直在努力简化开发者的工作,不管你是在什么平台构建应用,无论你想在 Azure 中使用什么功能,只需简单几步,就可以轻松地为团队建立功能齐全的 DevOps 管道。一直以来微软也在扩展 Visual Studio Team Services(VSTS)为 Azure 提供的支持构建和发布服务。 VSTS 现在内置了流行应用程序框架,自动和无缝 DevOps 管道集成以及监控功能。
使用 Azure DevOps Projects 可在几分钟内在任何 Azure 服务上构建 Azure 应用程序。Azure DevOps Projects 允许开发者通过几个快速步骤部署到选择的 Azure 应用服务,并提供开发,部署和监控云中托管的应用程序所需的一切。
用户只需选择应用程序语言,运行时和 Azure 服务,Azure DevOps Projects就会设置好以下这些:
所需的 Azure 资源;
带有应用程序代码的 Git 仓库;
自动化 CI/CD 管道;
Application Insights 集成,用于监控应用程序;
DevOps project 仪表板,允许用户从 Azure 门户中的单个视图监控代码提交,构建和部署;
VSTS 账户和 Project。
Azure DevOps Projects 公开预览版发布以后收到了一些反馈,因而 DevOps Projects 中又新增了一些功能。
使用 DevOps Projects,用户不仅可以部署到 Web App(容器,Windows,Linux),还可以部署到 Azure Kubernetes Service (AKS),Azure Service Fabric Mesh,虚拟机和 Azure SQL 数据库。 除了.NET,.NET Core,Java,PHP,Node 和 Python 之外,微软还增加了对 Ruby 和 Go 的支持。
AKS:AKS 是完全托管在 Azure 中的 Kubernetes 服务,可在 DevOps Projects 中启动新的 Node.js,.NET Core 或基于 Java 的应用程序时使用。
用户只需选择应用程序语言,运行时,然后选择 AKS, DevOps Projects 就可以创建 AKS 群集并使用 Helm Charts 设置 DevOps 管道。
在后台,Azure DevOps Projects 会创建一个 AKS 集群以及 Azure 容器注册表(Azure container Service,ACR),并在两者之间配置信任关系。 这样,AKS 集群能够从 ACR 下载容器镜像。VSTS 中的构建和发布管道能构建 Docker 容器镜像,将镜像推送到 ACR,然后打包 Helm chart 并将其部署到新创建的 AKS 集群。
虚拟机:Azure 虚拟机(VM)可提供更多控制,并能运行现有的各种应用程序,因而成为很多人的选择。虚拟机的构建和发布管道使用 Deployment Group (部署组),这是 VSTS 发布管理中强大的开箱即用多机部署功能。
数据库:在实际应用中,应用程序通常不仅包括 Web API / App,还包括 SQL 数据库。考虑到这一点,微软添加了对 Azure SQL 数据库的支持。用户可以轻松使用 Azure DevOps Projects 来创建使用 Azure SQL 数据库的 ASP.NET 应用程序。
后续微软还将努力为 Azure DevOps Projects 支持的许多框架添加数据库支持。
Ruby 和 Go:最后,Azure DevOps Projects 中还添加了对 Ruby 和 Go 的支持。 这两种开发语言目前在开发人员中很流行,开发者可以使用 DevOps Projects 将 Ruby 和 Go 应用程序部署到 Azure App Service。
Azure DevOps Projects 旨在简化 Azure 中的部署,这种方式可以帮助用户的团队在未来取得成功。用户可以通过简单的点击在几分钟内创建项目,这些创建的管道是面向未来的,可以随着应用程序的增长进行广泛的自定义和扩展。它创建的管道与全球数千家公司使用的强大的 VSTS 构建和发布管道是一样的,每天部署数万个版本,支持数百万开发人员。