• 快速配置Azure DevOps代理服务器


    快速配置Azure DevOps代理服务器(CentOS 7)

    Azure DevOps非常好用,但是代理服务器的配置相对有点麻烦而且易出问题,接下来笔者分享一下如何快速配置Azure DevOps的代理服务器。值得注意的是,本文以CentOS 7为例,故在开始之前,请先准备好CentOS 7服务器。

    下载Linux代理

    在Azure DevOps的代理池管理界面,我们可以下载Linux代理的安装包:

    下载Linux代理

    点击下载按钮,下载到本地。

    上传到目标代理服务器(CentOS 7)

    我们可以使用WinSCP工具将安装包上传到目标服务器:

    upload

    上传完成后,可以执行以下命令创建目录并解压:

    mkdir myagent && cd myagent
    tar zxvf /root/vsts-agent-linux-x64-2.153.1.tar.gz
    解压

    解压之后,可以看到如图所示的目录。

    安装依赖

    解压之后,我们需要检查并安装必备的依赖:

    ./bin/installdependencies.sh
    安装依赖
     

    配置代理

    安装完成之后,我们就可以配置代理了。我们可以手工配置,也可以使用脚本配置。无论哪种配置方式,均需要执行“./config.sh”脚本:

    手动配置

    不过这块有几个注意事项。

    “Must not run with sudo”问题

    如出现“Must not run with sudo”提示导致无法执行,则编辑改文件,移除以下脚本:

    if [ $user_id -eq 0 -a -z "$AGENT_ALLOW_RUNASROOT" ]; then
      echo "Must not run with sudo"
      exit 1
    fi

    验证类型说明

    • Alternate 基本身份验证
    • Integrated Windows集成身份验证,不支持 macOS 和 Linux.
    • Negotiate (默认) 通过Windows身份验证方案(例如NTLM或Kerberos)以登录用户以外的用户身份连接到TFS或Azure DevOps Server。选择此模式后,系统将提示输入凭据。
    • PAT 令牌验证,需创建令牌

    相关详细的配置可以参考:https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/v2-linux?view=azure-devops#unattended-config

    一次次手工配置太麻烦,我们可以直接使用脚本配置。

     

    使用脚本配置

    参考脚本如下所示:

    ./config.sh --unattended --url https://Azure DevOPS域名 --auth negotiate --userName 用户名 --password 密码 --pool default

    如上面脚本所示:

    • 使用–unattended指定了使用命令行参数配置
    • 使用–url指定了Azure DevOps服务器域名
    • 使用--auth <type>指定了身份验证类型
    • –userName指定用户名
    • –password指定密码
    • –pool指定代理要加如的代理池名称
    • 其他参数均使用默认参数

    安装代理服务并启动

    代理可以通过命令行的方式运行,但是不便于无人值守。我们可以将代理安装为服务并启动:

    sudo ./svc.sh install
    sudo ./svc.sh start
    安装并启动代理服务

    启动之后,就可以在代理池看到我们的代理服务器了:

    代理池
     

    安装Git 2.9.0以上版本(必须)

    这里我们使用IUS来进行安装。注意:IUS是一个yum存储库,为RHEL和CentOS提供了较新版本的精选软件。

    在开始之前,我们需要安装IUS:

    yum install 
     https://repo.ius.io/ius-release-el7.rpm 
     https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm -y

    然后我们可以在此地址去找我们需要的包了:

    https://github.com/search?q=org%3Aiusrepo+topic%3Arpm&s=updated

    比如Git我们可以使用此库的包:https://github.com/iusrepo/git224

    go:

    yum install -y git224
    安装Git

    由于网络问题,请耐心等待。

    安装和配置Docker

    如果需要用到Docker构建,则必须安装Docker。这里直接使用快捷脚本安装:

    curl -fsSL https://get.docker.com -o get-docker.sh
    sh get-docker.sh
    Docker安装

    接下来我们配置加速器以及Docker服务:

    mkdir /etc/docker
    
    cat > /etc/docker/daemon.json <<EOF
    {
     "registry-mirrors": ["https://mirror.ccs.tencentyun.com"]
    }
    EOF
    
    mkdir -p /etc/systemd/system/docker.service.d
    systemctl daemon-reload
    systemctl enable docker
    systemctl restart docker

    至此,代理就基本上配置完成,可以尽情的构建了:

    构建
  • 相关阅读:
    js 判断中文输入法是否输入完成(系统自带输入法)
    Winform DataGridView中的Button点击事件
    利用sp_addlinkedserver实现远程数据库链接
    锐浪报表多个子报表赋值
    未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序
    C# 中解决页面刷新后字体等变大问题
    QRCode 扫描二维码、扫描条形码、相册获取图片后识别、生成带 Logo 二维码、支持微博微信 QQ 二维码扫描样式
    c#4.0 qrcode二维码生成 简单封装
    .net2.0 生成二维码
    c# 生成下部带文字的二维码
  • 原文地址:https://www.cnblogs.com/codelove/p/13671770.html
Copyright © 2020-2023  润新知