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 了!

猜你喜欢

转载自www.cnblogs.com/lishan1/p/10680036.html