上次介绍了Azure Application Insights,实现了.net core程序的监控功能.这次让我们来看看Azure DevOps Pipeline功能.Azure DevOps Pipeline 是Azure DevOps里面的一个组件,对于12个月试用账号同样永久免费. 持续集成CI 持续集成指的是,频繁地(一天多次)将代码集成到主干. 它的好处主要有两个. (1)快速发现错误.每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易. (2)防止分支大幅偏离主干.如…
上一次我们讲了使用Azure DevOps Pipeline实现.Net Core程序的CI.这次我们来演示下如何使用Azure DevOps实现.Net Core程序的CD. 实现本次目标我们除了Azure DevOps外还需要: 一台安装了Docker的主机 一个 Docker Hub 账号 上一次我们的CI实现了: 发布>编译>单元测试 这次我们要实现剩下的几个步骤: 生成镜像>推送镜像>部署 创建Docker镜像仓库 我们生成的镜像需要有个存放的地方.各大云厂商其实都有这种…
一,引言 最近项目上让开始学习AWS,作为一名合格的开发人员,当然也是学会利用Azure DevOps Pipeline 将应用程序部署到 AWS ECS(完全托管的容器编排服务).我们要学会将应用程序部署到多云的环境上,技多不压身!!!! 首先肯定的是,我们必须先依赖Azure DevOps 进行应用程序构建 docker images .并且将 dockre image 推送到 AWS ECR(完全托管的容器注册表) 二,正文 1,创建AWS ECR 容器注册表 登陆到AWS 控制台后,搜索…
一,引言 Azure Pipeline 管道是一个自动化过程:但是往往我们由于某种原因,需要在多个阶段之前获得批准之后再继续下一步流程,所以我们可以向Azure Pipeline 管道添加审批!批准流程可帮助我们进一步控制自己的管道:我们可以控制管道内特定阶段的 Step 开始,通过审批,并决定 Azure Pipeline 管道何时完成. 而至于为什么要添加审批流程,是因为基础设施资源的部署是需要进行评估,慎重操作.有了审批,可以查看前一阶段以确认配置代码是否正确. -------------…
前言 本文主要是讲解如何使用Azure DevOps+Docker 来实现持续集成Asp.NET Core项目(当然 也可以是任意项目). 上一篇: Azure DevOps+Docker+Asp.NET Core 实现CI/CD(一 .简介与创建自己的代理池) 觉得有帮助的朋友~可以左上角点个关注,右下角点个推荐 今天我们废话不多说 直接开始正文 正文 昨天我们创建了自己的代理服务器(其实也可以用Azure提供的免费代理服务器,就是要排队,而且比较慢,限制比较多..) 今天我们来讲讲如何创建自…
一,引言 上一篇文章记录了利用 Azure DevOps 跨云进行构建 Docker images,并且将构建好的 Docker Images 推送到 AWS 的 ECR 中.今天我们继续讲解 Azure DevOps 的 Pipeline,利用 Release Pipeline 实现 Terraform for AWS Infrastructure Resources 自动部署,我们的目标是将 images 部署到 AWS ECS 上. -------------------- 我是分割线 -…
思路浅析 在我们分析的 Azure Terraform 系列文中有介绍到关于 Terraform 的状态文件远程存储的问题,我们在  Azure DevOps Pipeline 的 Task Job 加 azure_cli_script 执行内联脚本(该脚本帮我们创建好 Terraform 状态文件存储所在的 Azure Resource Group. Azure Storage Account.Azure KeyVault 等资源),需要注意的是,内联脚本中有使用动态变量,该变量临时存储 Az…
一,引言 起因是前两天项目上做测试,需要我把写好的基于.NET 5 的 Web 测试程序作成 Docker 镜像.当我在本地验证完功能后,准备利用 Docker 构建应用程序镜像的时候,发现系统不支持安装 Docker Desktop.这下看来只能利用Azure DevOps 自动创建 Docker 镜像了. 二,正文 1,创建 Azure Container Registry 服务 前置条件,我们得先手动创建 镜像存储库.我们登录到 Azure Portal 上,点击 "Create a re…
在Azure DevOps中,管道可以用来构建解决方案,O(∩_∩)O哈哈~快万能了,本章主要介绍如何创建Nuget包并且将其发布到Nuget服务器的过程. 前面我创建了一个非常简单的类库,这边我不做过多叙述,接下来我们需要进行编辑csproj文件,当我们创建Nuget包时,我们将使用dotnet pack命令.这于传统的Nuget cli稍微有点不同,在传统的Nuget CLI中,我们创建nuspec文件并针对nuspec运行nuget pack.dotnet pack命令将从csproj创建…
前几篇文章中,我们讨论了如何通过流水线实现项目的编译.上传.打包.部署等操作,今天我们来实现一套完整的流程,把之前碎片化的知识点给串起来. 本次我们使用一个ASP.NET Core的WebApi项目来进行项目的演示,后面也会写java和golang的. 首先我们先创建一个ASP.NET Core WebAPI的模板项目,使用IDE创建就可以,我用的是jb全家桶的rider. 创建完成之后,我们稍微对项目做一点点修改,主要修改的内容为:关闭HTTP重定向,关闭鉴权,更改启动端口为5001. 在Pr…