4

我已经构建了在 docker 中运行的自托管 ubuntu 代理。

一切正常,构建代理正在工作等。

除了管道步骤中的所有内容都以 root 而不是非 root 用户身份执行。

例如,当我尝试执行“npm ci”并查看我的构建代理日志时:

; node bin location = /usr/bin/node ; cwd = /azp/agent/_work/1/s/Core ; HOME = /root

vs 来自 Microsoft 托管的构建代理的日志:

; node bin location = /usr/local/bin/node ; cwd = /home/vsts/work/1/s/Core ; HOME = /home/vsts

这给我带来了很多阶段的问题,因为以 root 身份运行一些命令需要不同的设置等。有谁知道如何从 ROOT 更改它?

我在dockerfile和Microsoft 提供的start.sh脚本中进行了尝试,但没有奏效。如果我以 docker 用户而不是 root 身份执行 start.sh,则构建代理根本不会启动。有什么线索吗?想法?

4

1 回答 1

1

您可以在该帐户下安装您的 linux 代理以从 root 更改它,例如/home/{accountname}/.

以下是有关如何在非 root 用户下安装 linux 代理的步骤。

非root用户连接linux代理

ssh useraccount@linuxIp

创建一个文件夹并 cd 文件夹。

mkdir myagent && cd myagent

从 url 下载包。

wget https://vstsagentpackage.azureedge.net/agent/2.155.1/vsts-agent-linux-x64-2.155.1.tar.gz

解压缩文件。

tar xzf vsts-agent-linux-x64-2.155.1.gz

配置 linux 代理

于 2019-11-18T07:40:47.157 回答