在Ubuntu上安装Azure DevOps代理程序

news2024/12/24 11:28:41

Contents

  • 1 概述
  • 2. 安装Ubuntu 18.04操作系统
  • 3. 安装Azure DevOps Server 代理
    • 3.1 安装Azure DevOps Server 代理
    • 3.2 以服务方式运行代理

1. 概述

Ubuntu是一个以桌面应用为主的Linux操作系统,目前在不适用微软Windows的企业中,ubuntu被广泛应用在个人电脑中,特别是比较关注数据和网络安全的单位中,ubuntu的使用率非常高,许多开发团队使用ubuntu用来作为开发测试环境。
本文主要介绍如何在Ubuntu操作系统中安装Azure DevOps Server的代理程序,实现持续集成和发布过程中的流水线功能。

2. 安装Ubuntu 18.04操作系统

为了演示在ubuntu操作系统中配置Azure DevOps Server的代理服务器,笔者专门在自己的电脑中,使用Hyper-V创建一台虚拟机,用于安装原生的ubuntu操作系统,下面是操作过程的截图和说明。

  • 从ubuntu官方网站下载安装镜像文件 https://releases.ubuntu.com/18.04.6 。
    ubuntu操作系统的最新版本已经升级到22.04,但是考虑到大部分用户还在使用1804的长期稳定版本,因此笔者使用了1804作为演示操作系统。

  • 在Hyper-v中新建虚拟机
    在安装过程中,全部选中默认的选项,例如英文,Normal Installation等

image

image

ubuntu的安装过程比较简单,我们略过安装过程的细节,直接调整到安装Azure DevOps Server的代理程序

3. 安装Azure DevOps Server 代理

3.1 安装Azure DevOps Server 代理

  • 从微软在Github上的官方网站(https://github.com/microsoft/azure-pipelines-agent)下载安装包
  • 解压缩到代理服务器中,例如
mkdir agent210
cd agent210
tar zxvf ~/Downloads/vsts-agent-linux-x64-2.210.1.tar.gz
  • 运行代理程序的配置脚本config.sh

image

如果是原生安装的ubuntu操作系统,在配置Azure DevOps Server 代理池的过程中,你会碰到上面截图的错误,系统提示你缺少必须的组件“gss-ntlmssp”

在连接互联网的情况下,我们可以使用sudo命令安装gss组件

sudo apt install gss-ntlmssp

安装上面的组件后,我们按照系统提示,完成全部的配置项,我们就可以在Azure DevOps Server的代理池中看到刚刚连接成功的代理。

image

3.2 以服务方式运行代理

使用交互式运行代理程序,在生成环境的运行过程中,大部分人不会选择这种方式;因为当服务器注销或重启后,需要用户手动启动代理,这样是非常不方便的。
在实际使用过程中,一般都会使用服务的方式,将代理运行在后台,无论用户注销了操作系统还是重启服务器,代理程序都会自动运行。
下面我们来看一下如何使用服务的方式运行代理程序。

  • 使用sudo方式运行svc.sh脚本,我可以看到有几个选项:install/start/stop/status/uninstall
  • 使用install选项,就可以将当前代理程序配置在后台

image

如果需要了解更新详细的功能,你还可以从微软Azure DevOps Server 的在线文档,查询更多的权威资料,也欢迎通过下面的联系方式与我沟通,相互学习,相互提高!


https://www.cnblogs.com/danzhang
Azure DevOps MVP 张洪君在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/132679.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络原理4 数据链路层

文章目录mac地址网络原理的总结在数据链路层中,最主要的就是以太网协议这里的目的IP和原地址都是mac地址 mac地址 首先要知道什么是Mac地址,mac地址也叫做物理地址或以太网地址,它是一个用来确认网络设备位置的位置,一个网卡就会…

javaWeb——第一章概述

目录 1.1 软件的分类 1.2 软件架构 1.3 web软件 1.4 web程序 web服务器: Tomcat: 扩展 Java web就是窗口和程序之间的交互: 1.1 软件的分类 系统软件 应用软件 介于两者之间的中间件(插件) 1.2 软件架构 B/S 服务器与浏…

ZC706P+ADRV9009连接RADIOVERSE详解之三

做好SD卡映像,连接好硬件之后,我们就可以尝试软件操作了。 步骤1:设置好网络 打开软件界面我们看到,板子默认的地址为192.168.1.10 端口号为55555.我们一定也设置跟板子连接的以太网口处于192.168.1网段,并且子网掩码…

【ESP32+freeRTOS学习笔记-(四)任务调度机制】

目录1 、什么是任务的调度机制1.1 概念1.2 三种算法1.3 决定算法的宏2、基本词条解释3、调度算法解释3.1 具有时间片的优先级抢先调度 Prioritized Pre-emptive Scheduling with Time Slicing3.1.1 图解高优先级任务抢占低优先级任务3.1.2 图解具有时间片的优先级抢占3.1.3 总结…

如何通过少量样本推断整体业务情况

在产品运营中非常常见,为了能够解决大量数据时分析效率急剧下降的窘况,我们就必须能够去分析非常小量样本的特征,再用这些特征去评估海量总体数据的特征,我们叫它样本检验。 样本,是指我们需要“分析或考察的数据”的…

MAC(m1)-安装Redis6.2.8

Redis官网:Download | Redis 我准备下载7以前的版本 下载放到如下位置 在这个目录打开终端: 编译测试,执行命令:sudo make test 等待了好久,估计好几分钟 最后出现: 下面准备安装redis,编译安…

计算机网络的定义和性能指标

目录计算机网络的定义计算机网络的分类计算机网络的性能指标速率带宽吞吐量时延时延带宽积往返时间利用率丢包率计算机网络的定义 计算机网络的精确定义并未统一;计算机网络的最简单的定义是:一些互相连接的、自治的计算机的集合; 互连&…

Kubernetes组件_Scheduler_02_二次调度

文章目录一、前言二、二次调度/运行期间调度Descheduler2.1 机器上安装helm2.2 每个机器都要准备好镜像2.3 使用helm部署三、Descheduler需要注意的点(相关理论知识)3.1 descheduler 调度策略3.2 descheduler 有哪些不足3.2.1 基于 Request 计算节点负载并不能反映真实情况3.2.…

【Lua】xLua逻辑热更新

1 前言 Lua基础语法 中系统介绍了 Lua 的语法体系,ToLua逻辑热更新 中介绍了 ToLua 的应用,本文将进一步介绍 Unity3D 中基于 xLua 实现逻辑热更新。 逻辑热更新是指:在保持程序正常运行的情况下,在后台修改代码逻辑,修…

子查询+「EXISTS」 以及 组合查询UNION ALL

目录方便的子查询及EXISTS使用子查询作为计算手段使用子查询过滤数据(IN)使用子查询过滤数据(EXISTS)组合查询UNION ALL如何使用UNION ALL合并多个结果集如何使用UNION去除集合的重复记录如何合并2个以上的结果集?方便…

Hudi(6):Hudi集成Spark之spark-shell 方式

目录 0. 相关文章链接 1. 启动 spark-shell 2. 插入数据 3. 查询数据 3.1. 转换成DF 3.2. 查询 3.3. 时间旅行查询 4. 更新数据 5. 增量查询 5.1. 重新加载数据 5.2. 获取指定beginTime 5.3. 创建增量查询的表 5.4. 查询增量表 6. 指定时间点查询 7. 删除数据 …

Python学习基础笔记六十二——反射2

1、 isinstanace(obj, cls) # 检查是否obj是否是类cls的对象: class Foo(object):passobj Foo()print(isinstance(obj, Foo)) 结果返回:True。 issubclass(sub, super) # 检查sub类是否是 super 类的派生类 class Foo(object):passclass Bar(F…

python详解(5)——类,类,还是类

目录 🏆一、前言 🏆二、类 🚩1、面向对象到底是什么 🚩2、数据成员and访问,汉堡店大升级(超难) 👍①、类变量(超难) 👍②、实例变量 &#x1f6a9…

A Latent Transformer for Disentangled Face Editing in Images and Videos翻译

点击下载论文 代码地址 图1 我们将真实图像投影到StyleGAN生成器的潜空间,并在编码的潜码上实现连续的解纠缠属性编辑。从原始图像和投影图像中,我们可以连续编辑一系列属性,例如:“微笑”、“刘海”、“拱形眉毛”、“年龄”、…

分布式对象存储设计原理

保存像图片、音视频这类大文件就是对象存储。不仅有很好的大文件读写性能,还可通过水平扩展实现近乎无限容量,并兼顾服务高可用、数据高可靠。 对象存储“全能”,主要因,对象存储是原生分布式存储系统,相对于MySQL、R…

[Linux]yum安装工具和vim编辑器

🥁作者: 华丞臧. 📕​​​​专栏:【LINUX】 各位读者老爷如果觉得博主写的不错,请诸位多多支持(点赞收藏关注)。如果有错误的地方,欢迎在评论区指出。 推荐一款刷题网站 👉 LeetCode刷题网站 文…

每日一问-ChapGPT-20230101-关于新年的规划

文章目录每日一问-ChapGPT系列起因每日一问-ChapGPT-20230101-关于新年的规划优秀的人,新年之初做哪些规划疫情时代,如何更好的保护好自己有哪些运动可以提升抵抗力冥想的具体实现步骤为什么制定了年度规划但往往完成不了如何克服看手机刷视频的习惯当日…

聊聊八卦,当年的顶流明星事件是如何把公司的缓存架构“击垮”的?

V-xin:ruyuan0330 获得600页原创精品文章汇总PDF 目录 一、为什么要用缓存集群二、20万用户同时访问一个热点缓存的问题三、基于流式计算技术的缓存热点自动发现四、动加载为JVM本地缓存五、限流熔断保护六、总结 一、为什么要用缓存集群 这篇文章,咱…

数值优化之基本概念

本文ppt来自深蓝学院《机器人中的数值优化》 目录 1 推荐书单 2 优化问题的基本范式 3 数值优化在机器人领域的应用 1 推荐书单 对于英语阅读有困难的同学可以看第一本书,对于最优化的介绍也是比较详细的。 这是第一本书的ppt链接最优化:建模、算法…

【LDF】线性判别函数(三)

松弛方法 学习准则 在感知函数准则中, 目标函数中采用了 −aTy-\mathbf{a}^T \mathbf{y}−aTy 的形式。实际上有很多其它准则也可以用于感知函数的学习。线性准则 Jp(a)∑y∈Y(−aTy)J_p(\mathbf{a})\sum_{\mathbf{y} \in Y}\left(-\mathbf{a}^T \mathbf{y}\right) Jp​(a)y∈…