精华内容
下载资源
问答
  • 微软Azure DevOps自动化部署

    千次阅读 2018-12-05 13:19:00
    3.准备Azure DevOps帐号 用来托管代码,使用pipeline自动打包docker镜像 https://dev.azure.com/   把我们第二步准备的项目push到Azure DevOps 该准备的都准备好了 接下来就是重点了       ...

    1.准备一个https://hub.docker.com账号,申请一个免费的镜像仓库(免费账户可以申请一个)

    创建docker远程镜像库

     

     

    2.新建一个mvc的项目

     


    给这个项目加上Dockerfile文件(AzureDemo/AzureDemo/..中添加)

     

    FROM dukecheng/aspnetcore:aspnetcore-runtime-2.2.0
    ARG source
    WORKDIR /app
    EXPOSE 80
    COPY ${source:-obj/Docker/publish} .
    ENTRYPOINT ["dotnet", "AzureDemo.dll"]

     

     在sln同级添加三个文件
    azure_build.sh

    workspace=`pwd`
    docker run --rm -v ~/.cache:/root/.cache -v ~/.config:/root/.config -v ~/.gnupg:/root/.gnupg -v ~/.local:/root/.local -v ~/.npm:/root/.npm -v `pwd`/SanBlog:/data digitallyseamless/nodejs-bower-grunt bash -c "bower install && npm install"
    docker run --rm -v ~/.dotnet:/root/.dotnet -v ~/.nuget:/root/.nuget -v ${workspace}:/src --workdir /src dukecheng/aspnetcore:aspnetcore-sdk-2.2.100-preview3-009430 bash -c "dotnet restore ./AzureDemo.sln && rm -rf ./AzureDemo/AzureDemo/obj/Docker/publish && dotnet publish ./AzureDemo/AzureDemo.csproj -c Release -o ./obj/Docker/publish"

     

    azuredemo.base.yml

    # Docker image
    # Build a Docker image to deploy, run, or push to a container registry.
    # Add steps that use Docker Compose, tag images, push to a registry, run an image, and more:
    # https://docs.microsoft.com/azure/devops/pipelines/languages/docker
    
    pool:
    vmImage: 'Ubuntu 16.04'
    
    variables:
    imageName: 'your-container-image-name:$(build.buildId)'
    
    steps:
    - script: docker build -f Dockerfile -t $(imageName) .
    displayName: 'docker build'
    
    azuredemo.base.yml
    version: '3'
    
    services:
    azuredemoweb:
    image: shitong/shitong:${IM_TAG-latest}
    networks:
    - appnet
    volumes:
    - /var/log:/var/log
    - /data/azure:/app/data
    redis:
    image: redis
    networks:
    - appnet
    ports:
    - 7379:6379
    volumes:
    - /data/redis:/data
    - /var/log:/var/log
    mongo:
    image: mongo
    volumes:
    - /data/mongodb/db:/data/db
    - /data/mongodb/backup:/data/backup
    - /var/log:/var/log
    networks:
    - appnet
    ports:
    - 27017:27017
    networks:
    appnet:

     

    这块的azuredemoweb节点下的image:shitong/shitong:${IM_TAG-latest}

    shitong/shitong就是我们第一步所建的hub.docker.com上的镜像文件库

    azuredemo.Development.yml

    version: '3'
    
    services:
    azuredemoweb:
    environment:
    - ASPNETCORE_ENVIRONMENT=Development
    ports:
    - 8080:80

     项目结构

     

     

    3.准备Azure DevOps帐号 用来托管代码,使用pipeline自动打包docker镜像

    https://dev.azure.com/

      

    把我们第二步准备的项目push到Azure DevOps


    该准备的都准备好了
    接下来就是重点了

     

     

     

     

     

     

    之后就会变成这样

     

     

     

    下面会有四个步骤:


    (1).还原nuget等依赖包 发布项目

     

    (2).打包成docker镜像

     

     

    (3).推送docker镜像到docker hub

     

     

    (4).服务器pull docker镜像 远程部署 运行项目

     

     

     

    cd /data/deploy/ && export IM_TAG=azuredemo_$(Build.BuildId)  && docker pull shitong/shitong:${IM_TAG} && docker-compose -f azuredemo.base.yml -f azuredemo.Development.yml config > docker-stack.yml && docker stack deploy --with-registry-auth -c docker-stack.yml myapp

     

     

     最后保存

     

    4.远程服务器

    首先要在远程服务器安装docker
    具体可以参考官网
    https://docs.docker.com/install/linux/docker-ce/ubuntu/
    这里安利一个教我docker的大佬的博客,可以查看/学习下基本的命令
    https://www.52hhx.com/index/articleDetail/73
    腾讯云的上机实验
    https://cloud.tencent.com/developer/labs/search?keyword=docker

    创建文件夹和azuredemo.base.yml,azuredemo.Develoment.yml

     

    内容直接拷贝第一步项目里的
    之后再把azuredemo.base.yml里的一些路径创建出来

     

     

    最后在Azure DevOps测试

     

    转载于:https://www.cnblogs.com/shitong/p/10070393.html

    展开全文
  • Azure DevOps 构建部署

    千次阅读 2019-07-12 16:27:11
    Azure DevOps 构建部署 在Linux生产服务上部署Agent 使用个人访问令牌(PAT)进行身份验证 1、使用的用户帐户登录Azure DevOps组织(https://dev.azure.com/{your_organization})。 2、在你的主页上打开个人资料,...

    Azure DevOps 构建部署

    在Linux生产服务上部署Agent

    使用个人访问令牌(PAT)进行身份验证

    1、使用的用户帐户登录Azure DevOps组织(https://dev.azure.com/{your_organization})。

    2、在你的主页上打开个人资料,进入Security。
    image

    3、创建个人访问令牌。
    image

    4、选择代理池(读取,管理)和部署组(读取,管理)权限,其他清空。

    5、复制令牌。配置代理时,使用此令牌。

    下载并配置代理

    1、登陆pipeline并进入 Agent pools:
    https://dev.azure.com/{your_organization}/_settings/agentpools

    2、新建agent pool
    点击New agent pool 输入名称,保存。

    3、点击下载agent

    4、在“ 获取代理”对话框中,单击“ Linux”。

    5、下载完成后,按照页面上的说明进行操作。

    6、配置Agent

    image

    注意:

    7、运行agent

    1、 交互式运行

    直接运行 ./run.sh
    

    2、作为systemd服务运行

    ```
    sudo ./svc.sh install
    sudo ./svc.sh start
    ```
    

    通过Pipeline构建发布项目

    构建项目

    1、yml 方式构建

    进入pipeline选择build,点击New pipeline,按照步骤生成如下yml文件( CopyFiles@2和PublishBuildArtifacts@1需要手动添加)

    # Maven
    # Build your Java project and run tests with Apache Maven.
    # Add steps that analyze code, save build artifacts, deploy, and more:
    # https://docs.microsoft.com/azure/devops/pipelines/languages/java
    
    trigger:
    - master
    
    pool:
     vmImage: 'Ubuntu-16.04' //默认Linux Agent
    
    steps:
    - task: Maven@3
     inputs:
       mavenPomFile: 'pom.xml'
       mavenOptions: '-Xmx3072m'
       javaHomeOption: 'JDKVersion'
       jdkVersionOption: '1.11' // jdk版本
       jdkArchitectureOption: 'x64'
       publishJUnitResults: false
       testResultsFiles: '**/surefire-reports/TEST-*.xml'
       goals: 'clean package -Dmaven.test.skip=true' // maven命令
       
    - task: CopyFiles@2
     displayName: 'Copy Files to: $(build.artifactstagingdirectory)'
     inputs:
       SourceFolder: '$(system.defaultworkingdirectory)'
       Contents: '**/*.jar'
       TargetFolder: '$(build.artifactstagingdirectory)'
     condition: succeededOrFailed()
    
    - task: PublishBuildArtifacts@1
     displayName: 'Publish Artifact: drop'
     inputs:
       PathtoPublish: '$(build.artifactstagingdirectory)'
     condition: succeededOrFailed()
    
    

    保存并运行,完成构建。

    2、选择图形化方式构建

    进入pipeline选择build,点击New pipeline,点击Use the visual designer

    image

    选择project

    image

    选择maven模板

    image

    执行maven命令

    image

    编译完成

    image

    发布项目

    构建成功后,点击release进行持续交付

    image

    配置Artifact

    image

    配置job以及task

    image
    选择自己配置的agent

    添加一个bash 并编写要执行的命令

    image

    保存成功,然后create release

    image

    运行成功后,可以在agent上查看到打包的文件以及命令运行结果。

    image

    展开全文
  • 在此实机练习中,我们会使用一个Nodejs 网页应用程式,以Docker 容器形式布署于Azure Container Registry 与Azure Web App for Containers Linux,并透过Azure DevOps Pipelines 让整个过程自动化。请注意此系列操作...
  • Azure DevOps(二):持续部署创建Release Pipeline添加工件设置Stages添加部署任务 在上一篇文章中主要讲了Azure DevOps的CI部分,也就是持续集成的部分。Azure DevOps CI/CD(一):初步 所以在本篇文章中将主要讲...

    在上一篇文章中主要讲了Azure DevOps的CI部分,也就是持续集成的部分。Azure DevOps CI/CD(一):初步

    所以在本篇文章中将主要讲一下在Azure DevOps中如何进行持续部署。

    那么我们就直接进入正题了。

    创建Release Pipeline

    跟持续集成(CI)类似,我们要先创建一个发布管道来执行一系列的部署操作,这时候要在左边栏Pipelines中选择Releases选项卡。

    在这里插入图片描述

    上图因为我已经创建了一个发布管道所以我这里多了一个列表,如果还没创建任何的发布管道在页面中间会有一个创建按钮点击创建就可以了。

    当我们点击创建后将会出现下面的页面。右边有很多已经预设好的部署环境,nodejs,docker,k8s等等都有,不过我个人一般很少用预设的,因为一般需要都很难完全符合,所以还不如自己创建一个。

    在这里插入图片描述

    输入一个名字,随便都可以这里我就先设为releaseTest了。输完可以点击一下上面的保存,保存一下更改。

    在这里插入图片描述

    添加工件

    下面就是添加工件的操作了,我们需要先为我们的发布管道添加工件,这个工件可以理解为需要发布部署的文件集。那么问题来了,这个待发布部署的文件集从哪来呢?

    这个工件就是从我们的构建管道也就是第一篇文章所介绍的持续集成(CI)的管道来的,那么在这里要打个岔,我们想要拿到发布工件,那么就需要在构建管道中告诉Azure DevOps哪些是需要发布部署的,回到上一篇文章的azure-pipelines.yml文件,我们需要添加下图这个task来把需要的文件推到发布管道中。

    在这里插入图片描述

    下图是这个task在azure-pipelines.yml文件中的代码形式,我们注意到一个用$(Build.ArtifactStagingDirectory)这个东西,这个是Azure DevOps中预定义的路径,在CI构建管道中所有的打包,发布,分发的默认路径就是这个路径。下面这个task的意思是说把$(Build.ArtifactStagingDirectory)文件夹里面的东西推到发布管道作为工件。

    在这里插入图片描述

    好了,我们对上一篇文章构建管道的修改补充就到这里了。让我们回到正题。

    点击左边的蓝色框框就可以添加工件了。

    在这里插入图片描述

    点击后在右侧会有个弹窗,这里的构建管道的源我们就选项目的构建管道就好了,点击下拉菜单选择就可以了。
    选择好后点击下面的Add按钮添加

    在这里插入图片描述
    然后回来看到已经添加好了。

    这里我们点击工件右上角的圆形闪电图标,设置触发器。

    在这里插入图片描述

    点击后右侧也会有个弹窗设置,这里有两个触发器,第一个是否启用持续集成(CD),第二个则是在提PR时也触发部署。

    一般都是选择的第一个开启持续集成(CD),并且开启持续集成后我们还可以针对项目仓库的分支和Tag来进行过滤。

    在这里插入图片描述
    在这里插入图片描述

    设置Stages

    添加完工件后我们还需要设置StagesStage可以理解为执行部署的阶段,一个阶段可以有下一个阶段,或者两个阶段同级,我们可以看到工件跟Stage之间有一根线连着,从左到右看可以看作是一个部署的工作流。

    在这里插入图片描述

    点击Stage左边的小人和闪电的图标后右边会有设置弹窗,就是设置这个部署条件的。

    触发器有自动和手动,选择手动的话每次CI构建管道完成后需要手动点击部署来触发部署,当选择手动后Stage和工件或者上一个Stage的连线会断开来指示工作流方向。而自动部署有工件过滤,计划,等等的可以设置。

    在这里插入图片描述

    还有一个就是我们可以设置需要授权部署,开启Pre-deployment approvals后就可以选择授权人和过期时间,当发布管道工作流进入到了这个Stage时会发送一封邮件到授权人的邮箱,授权人可以直接在邮箱中点击同意然后发布管道就会继续沿着工作流继续执行。

    在这里插入图片描述

    添加部署任务

    上面都是在添加工件,设置Stage工作流条件等,还没正真配置执行部署。那么现在我们就关注如何配置部署,使我们的工件正真的发布部署到目标服务器上。

    在这里插入图片描述

    点击上图releaseTest下面的job和task后打开新的界面选择需要的task,这跟构建管道是一样的。

    在这里插入图片描述

    作为例子我这里就选择.Net Core的Task,然后选择dotnet push来发布nuget包。

    这里我们可以看到设置Path to NuGet packages to publish这里,右边有三个点的图标,点击该图标会弹出一个类似文件浏览器的窗口,我们可以在这个文件夹浏览器窗口选择我们在构建管道推送到工件里面的文件。配置完成后点击Add添加该Task。

    还可以添加多个Task,例如有些情况可能打包出来的是压缩包,那么我们可以首先添加一个解压功能的Task,然后下面再根据自己需要在解压功能的Task后面添加SSH,FTP,...或者其他的Task来配合完成部署。

    文件浏览器这个功能都不限于.Net Core的Task。任何其他的javadockernodejs Task等等都是可以通过这种图形化的文件浏览器来选择需要发布部署的文件。

    在这里插入图片描述
    在这里插入图片描述

    当所有的都配置完成后记得点击上面的保存哦。这样配置完成后当我们的提交代码时就会自动创建一个发布管道,如果发布管道是自动运行的那么就会自动部署了,如果是配置的手动部署那么只需要我们来到发布管道页面手动点击一下部署按钮就可以执行部署了。
    保存哦。这样配置完成后当我们的提交代码时就会自动创建一个发布管道,如果发布管道是自动运行的那么就会自动部署了,如果是配置的手动部署那么只需要我们来到发布管道页面手动点击一下部署按钮就可以执行部署了。


    个人公众号,欢迎关注。天天更新是不可能的,这辈子都不可能天天更新。只有心情好的时候更新一下这样子才维持的了生活。
    在这里插入图片描述

    展开全文
  • 注1:以下只是以Net Core项目为例,实际运用场景中,除了dockfile的编写有差别,剩下整个自动化部署链条中的技术也好,工具也好,都可以复用,与语言和语言框架本身无关。 注2:本文演示的也只是其中一种简便的方式...

    1. 前言

    前前后后学习kubernetes也有一个来月了,关于kubernetes的博客也写了有十多篇。但是技术如果无法落地到实际的应用场景终归是纸上谈兵,所以就有了这一出:通过结合kubernetesazure devops实现项目的CI/CD以及均衡负载

    写完这篇后kubernetes的相关学习也暂时告一段落了,有种终于闯关成功了啊的感觉,当然这是题外话了。

    注1:以下只是以Net Core项目为例,实际运用场景中,除了dockfile的编写有差别,剩下整个自动化部署链条中的技术也好,工具也好,都可以复用,与语言和语言框架本身无关。
    注2:本文演示的也只是其中一种简便的方式,具体的自动化流程中,由于自由度非常高,所以实际的流程可能会更加复杂,这里就不做赘述了

    以下场景需要用到的工具或者技术:

    • .Net Core

    部署的应用本身

    • Github

    作为代码仓库

    • kubernetes

      • docker

      • helm【kubernetes的包管理工具】

      • ingress【使用ingress绑定域名和https证书,实现域名访问】

    • Azure DevOps

    作为CI/CD的工具

    注:以下所有的相关部署代码,都在下面这个仓库

    • 仓库内容只是我自己用的一个小工具,当然具体是什么内容不重要,这篇只是演示部署相关的

    https://github.com/lzw5399/TocGenerator


    2. Net Core项目本身的准备

    2.1 dockerfile

    你需要一个dockerfile来构建一个docker image, 如果是.Net Core项目,vs提供了傻瓜式生成dockerfile的功能,可以免去初学时编写dockerfile的烦恼

    • 本示例dockerfile路径和内容

    2.2 创建kubernetes用于helm的chart包

    2.2.1 说明

    这一部分需要有helm相关的知识,如果熟悉k8s但不熟悉helm,可以参照:

    kubernetes系列(十六) - Helm安装和入门

    2.2.2 chart文件目录和文件组成

    自定义的chart包,位于以下路径

    https://github.com/lzw5399/TocGenerator/tree/master/kubernetes

    如上图可以看出是一个很经典的自定义chart包的文件目录,即:

    Copy.
    ├── Chart.yaml           【chart的name和version等信息】
    ├── templates            【k8s的资源清单模板,可以引用values.yaml的变量】
    |   ├── deployment.yaml
    |   └── service.yaml
    ├── values.yaml          【定义变量,供template/下的yaml使用,实现动态替换yaml内容】
    

    3. Azure Devops创建仓库的pipeline

    3.1 前言

    Azure DevOps是微软出品的DevOps平台,里面包含了Pipelines工具链,对个人免费,可以用于项目的CI/CD

    https://dev.azure.com

    3.2 使用azure devops准备操作

    • 如果之前使用过azure devops,这几步可以视情况跳过。

    1. 进入azure devops注册账号

    2. 之后按照引导新建一个organization

    3. 再新建一个project

    4. 进入project

    3.3 创建service connections

    这里要创建一个service connections,用于之后pipeline访问k8s的master服务器

    1. 点击project setting

    2. 这里点击service connections来创建一个连接,用于访问k8s的master服务器

    3. 然后填写具体的凭证,之后的pipeline上需要

    3.4 新建pipeline流水线

    新建pipeline流水线用于自定义部署流程

    1. 点击pipelines,然后点击create pipelines,新建一条流水线来部署我们的应用

    2. 选择代码仓库位置,选github

    3. 然后会跳到github进行授权,授权完成后会显示github的repo列表,选择具体的仓库

    4. 选择完仓库后,会自动按照你当前项目的语言,在github仓库的根目录生成一个默认的azure-pipelines.yml文件,

    5. 替换文件的内容,我们最终使用的yaml文件步骤大概如下

    • 第一步:构建docker镜像

    • 第二步:将自定义的chart包拷贝到master服务器上

    • 第三步:执行deploy.sh脚本,完成部署

    Copy# 哪条分支会触发构建
    trigger:
    - master
    
    resources:
    - repo: self
    
    # 定义变量
    variables:
    - name: appName
      value: tocgenerator
    
    - name: tag
      value: $(Build.BuildNumber)
    
    - name: imageNameWithoutTag
      value: $(dockerid)/$(appName)
    
    - name: imageNameWithTag
      value: $(imageNameWithoutTag):$(tag)
    
    - name: serverChartLocation
      value: /root/helm-chart-folder/toc
    
    stages:
    - stage: Build
      jobs:  
      - job: Build
        pool:
          vmImage: 'ubuntu-latest'
      
        # 这下面是每个我们要具体执行的任务
        steps:
        # build docker images并且push到仓库
        - task: Docker@2
          displayName: docker build and push
          inputs:
            containerRegistry: 'my_docker_hub'
            repository: '$(imageNameWithoutTag)'
            command: 'buildAndPush'
            Dockerfile: '**/Dockerfile'
            buildContext: '.'
            tags: $(tag)
            addPipelineData: false
    
        # 将kubernetes文件夹,即chart包拷贝到k8s的master服务器
        - task: CopyFilesOverSSH@0
          displayName: copy helm chart to server
          inputs:
            # 这个endpoint就是我们刚刚创建的service connection的名字
            sshEndpoint: 'my_server'
            sourceFolder: 'kubernetes'
            contents: '**'
            targetFolder: $(serverChartLocation)
            readyTimeout: '20000'
      
        # 在k8s的master服务器上运行我们github仓库的根目录的deploy.sh,进行部署操作
        - task: SSH@0
          displayName: run deploy shell on server
          inputs:
            # 这个endpoint就是我们刚刚创建的service connection的名字
            sshEndpoint: 'my_server'
            runOptions: 'script'
            scriptPath: 'deploy.sh'
            args: '$(tag) $(serverChartLocation)'
            readyTimeout: '20000'
    

    3.5 创建部署shell脚本

    部署脚本的位置

    https://github.com/lzw5399/TocGenerator/blob/master/deploy.sh

    几点说明

    1. echo纯粹是为了记录log使用的,下面的示例把echo部分删除了

    2. $1 and $2 代表外部传入的参数

    3. $1是image的tag,$2是k8s的master服务器上我们自定义的chart的目录

    4. 移除没有tag的悬挂docker image,纯粹为了节省服务器空间,为可选项

    Copy#!/bin/bash
    
    # 出现错误退出脚本执行
    set -o errexit
    
    # $1 and $2 代表外部传入的参数
    # $1是image的tag,$2是k8s的master服务器上我们自定义的chart的目录
    buildNumber=$1
    serverChartLocation=$2
    cd $serverChartLocation
    
    # 安装或者升级我们的helm release
    # 即如果查询到了有release存在就upgrade,没有则install
    if test -z "$(helm ls | grep toc-release)"; then
      helm install -f values.yaml --set env.buildnumber=$buildNumber --set image.tag=$buildNumber toc-release .
    else
      helm upgrade -f values.yaml --set env.buildnumber=$buildNumber --set image.tag=$buildNumber toc-release .
    fi
    
    # 移除没有tag的悬挂docker image(可选)
    danglings=$(sudo docker images -f "dangling=true" -q)
    if test -n "$danglings"; then
      sudo docker rmi $(sudo docker images -f "dangling=true" -q) >>/dev/null 2>&1
      if [[ $? != 0 ]]; then
        exit $?
      fi
    fi
    
    exit 0
    

    4. 触发pipeline部署流水线

    这里有两种办法,

    1. 点击我们刚刚创建的pipeline手动run一个

    2. 通过push代码到仓库的指定分支(我们设置的master)触发构建

    显示构建成功之后就可以查看了!

    5. 关于均衡负载

    均衡负载是kubernetes自带的基础功能之一,这里只是做了一个试验可以更加直观地感受到而已

    如下

    1. 定义一个静态的guid

    2. 在/version 路由下输出guid

    则如果有2个实例,且均衡负载成功的话,每次刷新这个界面,会随机显示这两个guid

    • deployment的replicas实例数需要设置2以上

    最后均衡负载试验的地址,也是本次实例项目的线上地址

    https://toc.codepie.fun/version

    • 如下,会出现两个不同的guid

    展开全文
  • DevOps是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化,它促进开发和运营团队之间的协作,以自动化和可重复的方式更快地将代码部署到生产中。 DevOps有助于提高组织提供应用程序和...
  • 本章我们要实现的是通过我们往代码仓库push代码后,我们将每次的push进行一次docker自动化打包发布到docker hub中,发布到之后我将进行部署环节,我们将通过ssh方式将我们的.NET应用程序pull并run到我们的云服务器上...
  • 上篇文章(使用azure function部署teams的outgoing webhook)介绍了如何使用AzureDevOps自动做Teams应用的CI/CD,很方便的代码一键部署。 今天跟大家简单介绍一下,如何使用Azure的DevOps进行多环境部署(开发...
  • Azure DevOps —— Azure Pipeline

    万次阅读 2019-02-24 19:15:37
    这是整个 Azure DevOps 的重头戏,也是微软愿意独立开放和打重金宣传的模块。虽然其他模块(限本地版)可以自由的开启和关闭,但微软对该模块有一个强有力的口号:*“Build in any program, release to any platform...
  •  起因是前两天项目上做...这下看来只能利用Azure DevOps 自动创建 Docker 镜像了,学以致用嘛! 二,正文 1,创建 Azure Container Registry 服务 前置条件,我们得先手动创建 镜像存储库。我们登录到 Azure Porta.
  • Azure DevOps 汇集人员、流程和技术,实现软件交付自动化,为用户提供持续的价值。借助 Azure DevOps 解决方案,帮助您全流程构建你的软件产品,它使流程和产品更可靠。 Azure DevOps帮助你用敏捷工具计划项目; ...
  • Devops自动化集成部署(1)-jenkins安装配置 https://blog.csdn.net/qq_40554364/article/details/88131362 1.安装git yum install -y git 2.安装maven wget http://repos.fedorapeople.org/repos/dchen/apache...
  • Azure DevOps 概述(AZ400) 1.1微软研发云Azure DevOps Server概述 对Azure DevOps各大模块进行概要性介绍 练习环境:https://azure.microsoft.com/zh-cn/services/devops/ Azure 是微软云包含微软云 Azure ...
  • 在近几年的研发过程中,Azure DevOps Server 大幅增强了软件部署过程的自动化功能。对于系统运维人员而言,确保软件的稳定运行,是自己的第一工作目标。但是,在信息技术飞速发展的今天,信息系统的升级变更已经成了...
  • 概述Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架。由于它在数据绑定、页面展示和使用简单...代理服务器配置Azure DevOps Server的自动化流水线,都基于代理服务器Agent Server,需...
  • 前言本文主要是讲解如何使用Azure DevOps+Docker 来实现持续集成Asp.NET Core项目(当然 也可以是任意项目).上一篇:Azure DevOps+Docker+A...
  • 其中一项值得注意的服务是Azure Pipelines,它可以帮助开发人员构建持续集成(CI)和持续交付(CD)管道,从而自动化和标准化软件开发过程的构建,测试和部署阶段。此外,Azure Pipelines还提供本机容器支持,可与...
  • Azure DevOps Services是微软公司的产品,其前身是Visual Studio Team ...其中的Azure Pipelines功能适用于企业级的持续自动化测试、部署等功能。 在Azure Pipelines中会用到代理机器(agent),主要分为微软...
  • Azure DevOps为支持团队提供开发人员服务,以计划工作,协作进行代码开发以及生成和部署应用程序。Azure DevOps支持一种文化和一组流程,这些流程和流程将开发人员,项目经理和贡献者聚集在一起,以完成软件开发。它...
  • 上一次我们讲了使用Azure DevOps Pipeline实现.Net Core程序的CI。这次我们来演示下如何使用Azure DevOps实现.Net Core程序的CD。实现本次目...
  • Azure DevOps作为微软云上DevOps端到端的工具链,提供了开发日常常用的主要功能模块,尤其是Repos源码库结合 Pipelines 流水线实现自动化的CI和CD,这是最常用到的功能。随着当前Web应用逐渐发展,前后端分离的架构...
  • 概述Azure DevOps Server 2019 (之前的名称为TFS),作为微软Azure DevOps 的企业私有(on-premises)服务器,是一个为开发团队提供软件协作开发管理的服务平台,在需求管理、代码管理、持续集成和交付、敏捷开发方面为...
  • 1. 概述Azure DevOps Server(原名TFS)是微软研发管理平台产品,是实现软件运维一体(DevOps)的实施方案,是敏捷开发方法论在研发团队中的落地工具,是微软研发大数据管理系统。根据企业当前软件研发管理的实际情况...
  • 2.工作项根据状态变化自动记录相应日期 二、系统集成/流水线增强 1.PR打Tag流水线插件 2.增量部署插件 3.多介质合并插件 三、工作项扩展/系统扩展 1.批量关联工作项插件 2.批量关闭迭代工作项插件 3.各编号...
  • Azure DevOps CI/CD(一):初步 CI/CD 看到这篇文章的你应该已经对CI/CD已经有一个比较大概的印象,所以在这里我也就大概的说一下概念性的东西就OK了。随着现在软件工程,互联网的发展,软件的规模,架构,面对的...
  • In this article, I would like to show how to build Continuous Integration and Continuous Delivery pipelines for a Machine Learning project with Azure DevOps. 在本文中,我想展示如何使用Azure DevOps为...
  • 这篇文章,我们将会介绍所有你想了解的 DevOps 知识,看完后你可以着手构建自己的 CI/CD 流水线。什么是 DevOps?它跟 Agile 有什么不同?有哪些受欢迎的 DevOps...
  • 作者:Jamie Cool,Azure DevOps项目管理总监 今天我们正式宣布Azure DevOps。 在与世界各地的客户和开发人员合作中,DevOps对团队的成功变得越来越重要。 Azure DevOps在提供支持软件开发团队的工具方面...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,794
精华内容 1,117
关键字:

azuredevops自动化部署