个人技术分享

步骤1:设计和开发Web应用

首先,选择一个开发框架和编程语言。例如,使用ASP.NET Core和C#进行开发。

  1. 创建项目

    • 使用Visual Studio或VS Code创建一个ASP.NET Core Web应用。
  2. 开发应用

    • 根据需求开发应用的各个部分(前端、后端、数据库访问层等)。
    • 使用Entity Framework Core进行数据库访问。

步骤2:设置Azure环境

2.1 创建Azure资源组

一个资源组是一个容器,可以包含所有相关的Azure资源。你可以在Azure门户中创建它。

az group create --name MyResourceGroup --location eastus

2.2 创建Azure SQL数据库

  1. 创建SQL Server

    az sql server create --name myserver --resource-group MyResourceGroup --location eastus --admin-user myadmin --admin-password MyP@ssw0rd!
    
  2. 创建数据库

    az sql db create --resource-group MyResourceGroup --server myserver --name mydatabase --service-objective S0
    
  3. 置防火墙规则

    az sql server firewall-rule create --resource-group MyResourceGroup --server myserver --name AllowYourIP --start-ip-address <your-ip-address> --end-ip-address <your-ip-address>
    

步骤3:开发和本地测试Web应用

  • 1. 配置连接字符串: 

appsettings.json中配置连接字符串。

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=tcp:myserver.database.windows.net,1433;Initial Catalog=mydatabase;Persist Security Info=False;User ID=myadmin;Password=MyP@ssw0rd!;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
  }
}
  • 2. 本地测试应用

    • 运行应用并确保它能够正常连接到Azure SQL数据库。
    • 使用Postman等工具测试API端点。

步骤4:部署到Azure

4.1 创建Azure App Service

  • 1. 创建App Service Plan

az appservice plan create --name myAppServicePlan --resource-group MyResourceGroup --sku B1 --is-linux
  • 2. 创建Web App

az webapp create --resource-group MyResourceGroup --plan myAppServicePlan --name mywebapp --runtime "DOTNETCORE|3.1"

4.2 配置应用设置

  • 1. 设置连接字符串

az webapp config connection-string set --name mywebapp --resource-group MyResourceGroup --settings DefaultConnection="Server=tcp:myserver.database.windows.net,1433;Initial Catalog=mydatabase;Persist Security Info=False;User ID=myadmin;Password=MyP@ssw0rd!;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;" --connection-string-type SQLAzure

步骤5:部署代码

5.1 使用Git部署

  • 1. 初始化本地Git仓库

git init
git add .
git commit -m "Initial commit"
  • 2. 配置Azure Git远程仓库

az webapp deployment source config-local-git --name mywebapp --resource-group MyResourceGroup

3. 获取Git远程URL并添加为远程仓库

git remote add azure <Git-remote-URL>

4.推送代码到Azure

git push azure master

5.2 使用Azure DevOps进行持续集成/持续部署(CI/CD)

  1. 创建Azure DevOps项目

    • 登录Azure DevOps并创建一个新的项目。
  2. 设置Pipeline

    • 在Pipelines中创建一个新的Pipeline,选择代码仓库(如GitHub、Azure Repos)。
    • 使用现有的模板或者自定义YAML文件来配置Build和Release Pipeline。

    YAML文件:

trigger:
- master

pool:
  vmImage: 'ubuntu-latest'

steps:
- task: UseDotNet@2
  inputs:
    packageType: 'sdk'
    version: '3.1.x'
    installationPath: $(Agent.ToolsDirectory)/dotnet

- script: |
    dotnet build --configuration Release
    dotnet publish --configuration Release --output $(Build.ArtifactStagingDirectory)
  displayName: 'dotnet build and publish'

- task: PublishBuildArtifacts@1
  inputs:
    PathtoPublish: $(Build.ArtifactStagingDirectory)
    ArtifactName: drop
  • 创建Release Pipeline

    • 创建新的Release Pipeline,从Artifact中选择Build Pipeline输出。
    • 配置部署阶段,选择Azure App Service为部署目标。

步骤6:监控和维护

  • 启用Application Insights

    • 在Azure门户中,为Web App启用Application Insights以监控性能和使用情况。

  • 配置警报和日志

    • 配置日志记录和警报以监控应用的健康状态。
    • 使用Azure Monitor设置警报规则,当某些条件满足时(如CPU使用率过高)发送通知。

利用多种Azure服务来实现高效的开发和管理,包括:Azure SQL数据库、Azure App Service、Azure DevOps