如何基于k8s快速搭建TeamCity(YAML分享)

前言

最近有朋友基于之前的博客《Docker最全教程之使用TeamCity来完成内部CI、CD流程(十七)》搭建TeamCity时出现了一些问题,由于平常比较忙,没有及时答复,非常抱歉。

这里分享下基于本地k8s集群(云端k8s服务注意使用云盘或者其他存储)搭建TeamCity的相关Yaml的配置文件,注意使用“kubectl apply -f <路径>”命令执行。

服务端YAML定义


apiVersion: apps/v1beta1	
kind: Deployment	
metadata:	labels:	app: teamcity	name: teamcity	
spec:	replicas: 1 #实例数量	revisionHistoryLimit: 2 #保留的历史记录数,设置为0将清理部署的所有历史记录,无法回滚	strategy:	type: Recreate   #更新策略为快速更新,即关闭所有实例重新创建	template: #pod模板	metadata:	labels:	app: teamcity	spec:	containers:	- image: jetbrains/teamcity-server  #镜像	imagePullPolicy: Always  #拉取策略	name: teamcity	ports:  #端口列表	- containerPort: 8111  #端口	resources:	limits:	cpu: 1000m #最大CPU,这里为1核	memory: 4184Mi  #最大内存	requests:	cpu: 97m  #预分配CPU,这里为0.097核	memory: 2092Mi #预分配内存	volumeMounts:	- mountPath: /data/teamcity_server/datadir	name: data-vol	- mountPath: /opt/teamcity/logs	name: log-vol	nodeName: k8s-node1 #强制约束将Pod调度到指定的Node节点上	restartPolicy: Always #重启策略	terminationGracePeriodSeconds: 30 #删除需要时间	volumes:	- name: data-vol	hostPath:   #使用主机目录	path: /var/teamcity	- name: log-vol	emptyDir: {} #临时目录	hostNetwork: true	
---	
kind: Service	
apiVersion: v1	
metadata:	name: teamcity-service	
spec:	type: NodePort #通过节点端口提供对外访问	ports:	- port: 8111	nodePort: 30001	selector:	app: teamcity

代理端YAML定义


apiVersion: extensions/v1beta1	
kind: Deployment	
metadata:	labels:	app: tc-agent	name: tc-agent	
spec:	replicas: 3	revisionHistoryLimit: 2 #保留的历史记录数,设置为0将清理部署的所有历史记录,无法回滚	strategy:	rollingUpdate: #滚动更新配置	maxSurge: 1	maxUnavailable: 0	type: RollingUpdate #使用滚动更新策略	template:	metadata:	labels:	app: tc-agent	spec:	containers:	- env:	- name: AGENT_NAME #代理名称	value: Agent1	- name: SERVER_URL #服务端访问地址	value: http://172.16.2.202:30001	- name: DOCKER_IN_DOCKER	value: start	image: jetbrains/teamcity-agent	imagePullPolicy: Always	name: tc-agent	resources: #资源限制	limits:	cpu: 4	memory: 10024Mi	requests: #代理构建时消耗比较大,尽量分配多点资源	cpu: 1	memory: 4096Mi	securityContext:	privileged: true #特级权限	volumeMounts:	- mountPath: /data/teamcity_agent/conf	name: vol	- mountPath: /var/lib/docker	name: vol	dnsPolicy: ClusterFirst	nodeName: k8s-node3 #强制约束将Pod调度到指定的Node节点上	restartPolicy: Always	terminationGracePeriodSeconds: 30	volumes:	- name: vol	emptyDir: {} #临时目录	hostNetwork: true	
---	
apiVersion: v1	
kind: Service	
metadata:	labels:	app: tc-agent	name: tc-agent	
spec:	ports:	- name: tcp-9090-9090	nodePort: 0	port: 9090	protocol: TCP	targetPort: 9090	selector:	app: tc-agent	sessionAffinity: None	type: ClusterIP

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

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

相关文章

github 创建文件夹

https://blog.csdn.net/zhaomengszu/article/details/80354929 在我们不适用本地Git的情况下&#xff0c;我们怎么在网页上创建类似下图一样的文件夹呢 四步方法&#xff1a; 第一步&#xff1a;找到新增按钮 第二步&#xff1a;输入文件夹名,你想要用的文件夹名字。 第三步…

ML.NET 终于在Jupyter NoteBook 上跑起来了

对.NETer来说&#xff0c;刚结束的.NET Conf 2019是非常难忘的&#xff0c;毕竟这个个人觉得比微软在中国办的大会更加清真&#xff0c;当然现阶段.NET 已经不单跑在Windows的一项技术了&#xff0c;它可以跑在Linux/macOS/iOS/Android/IoT等&#xff0c;也可以融合当今最热门的…

tf.variable_scope() and tf.name_scope()

https://blog.csdn.net/UESTC_C2_403/article/details/72328815 tf.variable_scope可以让变量有相同的命名&#xff0c;包括tf.get_variable得到的变量&#xff0c;还有tf.Variable的变量 tf.name_scope可以让变量有相同的命名&#xff0c;只是限于tf.Variable的变量 例如&a…

2019.NET Conf China,.NET之崛起,已势不可挡

本文来自DotNET技术圈作者&#xff1a;邹溪源一、背景当今时代&#xff0c;气象更新&#xff0c;技术飞速发展。当今时代&#xff0c;开发者大概是最优秀的群体。每一位开发者&#xff0c;无不奋勇向前&#xff0c;努力追寻时代的步伐&#xff0c;以大无畏的精神迎接挑战&#…

Pocketflow 使用

Pocketflow的简介&#xff1a;https://pocketflow.github.io/ 由两个modules组成&#xff1a;Learner module 负责利用随机hyperparameters压缩并fine-tuning&#xff0c;optimizer module 负责依据随机参数对应的结果确定最佳的压缩参数。Learn module 遍历的hyperparameter来…

PowerBI 11月更新 数据PPT是否会引领新一轮革命

PowerBI Desktop 2019年11月更新新鲜出炉了&#xff1a;罗叔作为全球第 80 人观看更新内容者&#xff0c;快速将本月更新全部奉上&#xff0c;供大家参考。 打开预览特性&#xff0c;如下&#xff1a;本次更新出了三大功能&#xff1a; Power Query 支持 AI新的功能区&#xff…

pip ImportError: cannot import name 'main' after update

sudo python3 -m pip uninstall pip && sudo apt install python3-pip --reinstall Chang pip to pip3

WeihanLi.Npoi 近期更新

WeihanLi.Npoi 近期更新Intro最近对我的 NPOI 扩展做了一些改变&#xff0c;一方面提高性能&#xff0c;一方面修复bug&#xff0c;增加一些新的功能来让它更加好用&#xff0c;前几天发布了 1.5.0 版本&#xff0c;下面来介绍一下最近的更新默认导入/导出格式变更在 1.5.0 版本…

【.NETCore 3】Ids4 ║ 多项目集成统一认证中心的思考

前言哈喽大家好&#xff0c;好久都没有写文章了&#xff0c;这次又重新开始写技术文章了&#xff0c;半年前我还是一直保持每周都写文章的&#xff0c;后来是为了响应群友的号召&#xff0c;开始踏上了录制视频&#xff08;https://www.bilibili.com/video/av58096866&#xff…

darknet 训练 cannot load image

train.txt 的末尾 不应是\r\n 而应是 \n

.NET 社区 NB,2019 中国 .NET 开发者峰会

点击蓝字关注我们作为广州 .NET 技术俱乐部的一名成员&#xff0c;很荣幸以志愿者的身份见证并参与了 首届社区组织的中国 .NET 开发者峰会 &#xff0c;这次大会共分为三天&#xff0c;第一天的 .NET 之夜&#xff0c;第二天的 .NET 开发者峰会&#xff0c;第三天的 .NET Core…

多版本opencv 兼容

https://blog.csdn.net/learning_tortosie/article/details/80594399 多版本OpenCV共存 假设我们已经安装好一版OpenCV&#xff0c;一般都安装在/usr/local下。 如果需要安装另一个版本的OpenCV&#xff0c;就不能再安装到/usr/local&#xff0c;而是选择其他路径&#xff0c…

SQL Server 中 JSON_MODIFY 的使用

SQL Server 中 JSON_MODIFY 的使用IntroSQL Server 从 2016 开始支持了一些 JSON操作&#xff0c;最近的项目里也是好多地方直接用字段直接存成了 JSON&#xff0c;需要了解一下怎么在SQL Server 中操作 JSON.JSON支持适用于 SQL Server 2016 及以上版本 和 Azure SQL Database…

TypeScript 3.7稳定版发布

TypeScript 3.7 发布了&#xff0c;此版本带来了许多新特性。Optional Chaining首先一大亮点是 Optional Chaining&#xff0c;这是社区呼唤特别强烈的一个 ECMAScript 特性。最初它是 TypeScript 的 issue 跟踪器上第 16 个 issue&#xff0c;于 5 年前提交&#xff0c;要知道…

Ubuntu 16.04 安装 cuda 7.5.run BEGIN failed--compilation aborted at ./cuda-installer.pl line 5

sudo apt install freeglut3-dev build-essential libx11-dev libxmu-dev \ libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev libglfw3-dev libgles2-mesa-dev

.NET手撸绘制TypeScript类图——上篇

.NET手撸绘制TypeScript类图——上篇近年来随着交互界面的精细化&#xff0c; TypeScript越来越流行&#xff0c;前端的设计也越来复杂&#xff0c;而 类图正是用简单的箭头和方块&#xff0c;反映对象与对象之间关系/依赖的好方式。许多工具都能生成 C#类图&#xff0c;有些工…

阅读源码学设计模式-单例模式

有些编码套路是公认的&#xff0c;大家都参照其编写符合可观赏性的代码&#xff0c;那就是设计模式现在.NETcore 默认提供了DI功能&#xff0c;那我想设计一个全局的引擎类&#xff0c;进行注入服务、解析服务、配置中间件。并且要求该引擎类全局唯一&#xff0c;其他地方不能进…

word 中同样的字号和行距倍数,不一样的行距

https://blog.csdn.net/missingu1314/article/details/24430165 http://www.xyduan.net/the-same-single-line-spacing-line-spacing-is-different/ 两篇文档&#xff0c;都是小四号字&#xff0c;都是单倍行距&#xff0c;可是行距明显不同&#xff0c;把其中的一个文档的一…