阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

使用 Docker 简化 TeamCity 安装

467次阅读
没有评论

共计 2260 个字符,预计需要花费 6 分钟才能阅读完成。

JetBrains 出品的 TeamCity 是一款强大易用的持续集成(continuous integration)系统。它是一款商业产品,但对于小型项目和 FOSS 应用程序(免费和开源软件)有一项特殊的零费用许可证。尽管 TeamCity 的安装已经相对容易了,但通过使用 Docker,安装过程会更简便。

像许多其它的最新式的持续集成系统一样,TeamCity 采用了构建服务器和构建代理的概念。服务器负责管理和构建配置。实际的构建过程(编译、打包、部署等等)是由一个或多个代理执行的。通过个种方式,很容易实现代理的自动设置,整个设置过程中只需要很少的手动配置。

TeamCity 服务器只需要 Java。安装过程很简单。通过 Docker,安装会更简单。为此,我准备了一个专门的容器 ariya/centos6-teamcity-server。此容器的基本系统是 ariya/centos6-oracle-jre7,一个运行了 Oracle 官方 Java 7 的 CentOS 6.5 系统(更准确地说,到发稿为止是 JRE 1.7.0_65-b17)。

假定你有一个已经安装了 Docker 的系统(VPS 例如:Linode 或 DigitalOcean,Amazon EC2 实例,一个虚拟机或一部真正的计算机),安装 TeamCity 服务器就简单到只需要运行下列命令。注意,如果你在使用 OS X,如果你仅想试验本安装请使用 boot2docker(参看我之前发表的博客 Docker on OS X 了解更多细节)。

docker run -dt -name teamcity_server -p 8111:8111 ariya/centos6-teamcity-server

几分钟后,打开机器地址的 8111 端口,开始 TeamCity 服务器的 Web 配置(更多细节请阅读官方 TeamCity 文档),如下图所示。如果你的系统使用了 iptalbes,确保 8111 端口允许连接。注意,TeamCity 数据将存储在特殊的位置 /data/teamcity这是一个标准的 Docker 卷,应当允许简单挂载、备份和未来升级。

使用 Docker 简化 TeamCity 安装

服务器配置完成后,就应为此服务器指定构建代理(不然,什么也构建不了)。通过运行容器 ariya/centos-teamcity-agent,我们再次用 Docker 产生一个构建代理。为了让代理工作,我们需要为它指定服务器。运行下列命令:

docker run -e TEAMCITY_SERVER=http://buildserver:8111 \
-dt -p 9090:9090 ariya/centos6-teamcity-agent

如果你在 运行着服务器容器的同一台主机上运行它,你需要将它们连接(link)起来。

docker run -e TEAMCITY_SERVER=http://teamcity_server:8111 \
--link teamcity_server:teamcity_server -dt ariya/centos6-teamcity-agent

环境变量中的 TEAMCITY_SERVER 是必须的,需要指向你上一步启动的 TeamCity 服务器的本地实例。一旦你运行了这个容器,它会连接到所指定的服务器,下载代理 ZIP 文件并安装。第一次连接服务器后,构建代理通常需要花几分钟时间更新。如果一切工作正常,在你的 TeamCity 服务器 Web 页面的 Agent 标签项中,你将看到一个新的代理。授权代理,现在它准备接受任何构建工作了!

如果启动代理出现问题,(docker ps)没有显示运行的容器,重新运行它,但这次使用 -it 选项(interactive terminal 交互终端)代替 -dt。这将转存一些额外的调试信息,有助于解决问题。

注意,此代理容器也是基于带 Java 7 的 CentOS 6。通常这还不够,你可能需要其它的依赖项(不同的 SDK,编译器,库等等)。理想情况下,那些依赖项能自动解决,或基于不同系统容器,或通过正确的自动设置。更多细节,参考我之前发表的博客 Build Agent: Template vs Provisioning。

还有借口不用持续集成?我可不这么想!

CentOS 7 安装 Docker V1.0 http://www.linuxidc.com/Linux/2014-07/104768.htm

开源项目 Docker,Red Hat 新的虚拟化选择 http://www.linuxidc.com/Linux/2013-10/91051.htm

dockerlite: 轻量级 Linux 虚拟化 http://www.linuxidc.com/Linux/2013-07/87093.htm

Docker 的搭建 Gitlab CI 全过程详解 http://www.linuxidc.com/Linux/2013-12/93537.htm

Docker 和一个正常的虚拟机有何区别? http://www.linuxidc.com/Linux/2013-12/93740.htm

在 Docker 中使用 MySQL http://www.linuxidc.com/Linux/2014-01/95354.htm

Docker 将改变所有事情 http://www.linuxidc.com/Linux/2013-12/93998.htm

Docker 安装应用(CentOS 6.5_x64) http://www.linuxidc.com/Linux/2014-07/104595.htm

Docker 的详细介绍:请点这里
Docker 的下载地址:请点这里

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计2260字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19350
评论数
4
阅读量
7962650
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击 PHP-FPM(FastCGl Process M...
每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年 0.99 刀,拿下你的第一个顶级域名,详细注册使用 前言 作为长期折腾云服务、域名建站的老玩家,星哥一直...
开发者福利:免费 .frii.site 子域名,一分钟申请即用

开发者福利:免费 .frii.site 子域名,一分钟申请即用

  开发者福利:免费 .frii.site 子域名,一分钟申请即用 前言 在学习 Web 开发、部署...
星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛 NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手! 作为动漫爱好者,你是否还在为...
星哥带你玩飞牛NAS-2:飞牛配置RAID磁盘阵列

星哥带你玩飞牛NAS-2:飞牛配置RAID磁盘阵列

星哥带你玩飞牛 NAS-2:飞牛配置 RAID 磁盘阵列 前言 大家好,我是星哥之前星哥写了《星哥带你玩飞牛 ...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛 NAS-14:解锁公网自由!Lucky 功能工具安装使用保姆级教程 作为 NAS 玩家,咱们最...
恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击 PHP-FPM(FastCGl Process M...
4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

  4 盘位、4K 输出、J3455、遥控,NAS 硬件入门性价比之王 开篇 在 NAS 市场中,威...
星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的NAS中!

星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的NAS中!

星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的 NAS 中! 大家对「数据安全感」的需求越来越高 ...
支付宝、淘宝、闲鱼又双叕崩了,Cloudflare也瘫了连监控都挂,根因藏在哪?

支付宝、淘宝、闲鱼又双叕崩了,Cloudflare也瘫了连监控都挂,根因藏在哪?

支付宝、淘宝、闲鱼又双叕崩了,Cloudflare 也瘫了连监控都挂,根因藏在哪? 最近两天的互联网堪称“故障...