TeamCity Agent安装

1 docker安装

 

docker run -it -e SERVER_URL=172.18.0.11:8111  \
    -v /home/lishan/teamcity/conf:/data/teamcity_agent/conf \
    -v /var/run/docker.sock:/var/run/docker.sock  \
    -v /opt/buildagent/work:/opt/buildagent/work \
    -v /opt/buildagent/temp:/opt/buildagent/temp \
    -v /opt/buildagent/tools:/opt/buildagent/tools \
    -v /opt/buildagent/plugins:/opt/buildagent/plugins \
    -v /opt/buildagent/system:/opt/buildagent/system \
    jetbrains/teamcity-agent 

 

2安装包

2.1解压缩 TeamCity Agent 安装包

先从 TeamCity 服务器上下载 Agent 的安装包。

 

$ wget http://xxx.xxx.xxx.xxx/update/buildAgent.zip

 

xxx.xxx.xxx.xxx为前文中安装的 TeamCity 服务器的 IP 地址。

接下来把 Agent 安装包的内容解压到 /var/local/buildagent 目录下。

 

$ unzip buildAgent.zip -d /var/local/buildagent

 

2.2配置 Agent

把 /var/local/buildagent/conf 目录下的  buildAgent.dist.properties 复制为 buildAgent.properties:

 

$ sudo cp buildAgent.dist.properties buildAgent.properties

 

编辑 buildAgent.properties,修改 serverUrl 的值:

 

 

同时设置 Agent 的名称:

 

name=tcagent1

 

 

2.3启动 Agent

在运行时,Agent 会在 buildagent 目录下创建日志文件夹,所以需要设置 tcuser 可以操作这个目录:

$ cd /var/local/
$ chown -R tcuser:tcuser buildagent/

 

现在就可以启动 Agent 了:

 

$ sh /var/local/buildagent/bin/agent.sh start

 

 

 

接下来打开 TeamCity Server,点击 "Agents",再点 "Unauthorized" 标签,可以看到 Server 已经和 Agent 建立了联系。

2.4 TeamCity Unauthorized

但是,此时的 Agent 还是不能用的。因为这里有个比较重要的概念"Authorized",只有被授权的 Agent 才能够被 Server 调度使用。我们现在就为 tcagent1 进行授权。

 

 

点击上图中的 "Unauthorized":

 

 

 

在在弹出的对话框中输入一些注释,然后点击 "Authorize" 按钮:

这时 tcagent1 已经被移到了 "Connected" 标签中,这也说明 tcagent1 现在已经可以使用了。

 

 

2.5配置Agent开机启动(如果是docker容器安装,就不需要这么麻烦了)

创建文件 /etc/init.d/tcagent,添加下面的内容,注意 jdk 的路径要更新为实际的路径:

#!/bin/sh
#Provide the correct user name:
USER="tcuser"
 
case "$1" in
start)
 su - $USER -c "cd /var/local/buildagent/bin ; ./agent.sh start"
;;
stop)
 su - $USER -c "cd /var/local/buildagent/bin ; ./agent.sh stop"
;;
*)
 echo "usage start/stop"
 exit 1
;;
 
esac
 
exit 0

 

设置文件的权限并配置为默认启动的服务:

 

$ sudo chmod 755 tcagent
$ sudo update-rc.d tcagent defaults

 

现在重启一下 Agent 所在的虚机,是不是重启完成后 Agent 已经可以自动连接上 Server 了!

转载于:https://www.cnblogs.com/lishan1/p/10680036.html