1.4安装teamcity
teamcity服务端
pvc
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: teamcityserver-data
namespace: devops
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 500Gi
storageClassName: basic-serviceskind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: teamcityserver-logs
namespace: devops
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
storageClassName: basic-serviceskind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: teamcityserver-backups
namespace: devops
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
storageClassName: basic-servicesservice
kind: Service
apiVersion: v1
metadata:
name: teamcity-server-service
namespace: devops
labels:
name: teamcity-server-service
spec:
ports:
- protocol: TCP
port: 8111
targetPort: 8111
nodePort: 30836
selector:
app: teamcity-server
type: NodePortdeployment
kind: Deployment
apiVersion: apps/v1
metadata:
name: teamcity-server
namespace: devops
labels:
app: teamcity-server
spec:
replicas: 1
selector:
matchLabels:
app: teamcity-server
template:
metadata:
labels:
app: teamcity-server
spec:
volumes:
- name: teamcity-data
persistentVolumeClaim:
claimName: teamcityserver-data
- name: teamcity-log
persistentVolumeClaim:
claimName: teamcityserver-logs
- name: teamcity-backups
persistentVolumeClaim:
claimName: teamcityserver-backups
containers:
- name: teamcity-server
image: registry.cn-chengdu.aliyuncs.com/liuchenyun/teamcity-server:2024.03.1
ports:
- containerPort: 8111
protocol: TCP
env:
- name: TEAMCITY_SERVER_MEM_OPTS
value: '-Xmx2g -XX:MaxPermSize=270m -XX:ReservedCodeCacheSize=350m'
- name: TZ
value: Asia/Shanghai
resources:
requests:
cpu: 200m
memory: 6Gi
volumeMounts:
- name: teamcity-data
mountPath: /data/teamcity_server/datadir
- name: teamcity-log
mountPath: /opt/teamcity/logs
- name: teamcity-backups
mountPath: /backups
livenessProbe:
tcpSocket:
port: 8111
initialDelaySeconds: 60
timeoutSeconds: 15
periodSeconds: 30
successThreshold: 1
failureThreshold: 5
readinessProbe:
tcpSocket:
port: 8111
initialDelaySeconds: 25
timeoutSeconds: 15
periodSeconds: 30
successThreshold: 1
failureThreshold: 5
imagePullPolicy: Always
restartPolicy: Always
imagePullSecrets:
- name: dockercfg-liuchenyunteamcity数据库
pvc
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: teamcity-pg-data
namespace: devops
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 10Gi
storageClassName: basic-servicesservice
kind: Service
apiVersion: v1
metadata:
name: teamcity-database-service
namespace: devops
labels:
name: teamcity-database-service
spec:
ports:
- protocol: TCP
port: 5432
targetPort: 5432
nodePort: 30894
selector:
app: postgres-server
type: NodePortdeployment
kind: Deployment
apiVersion: apps/v1
metadata:
name: teamcity-database
namespace: devops
labels:
app: postgres-server
spec:
replicas: 1
selector:
matchLabels:
app: postgres-server
template:
metadata:
labels:
app: postgres-server
spec:
volumes:
- name: postgres-data
persistentVolumeClaim:
claimName: teamcity-pg-data
containers:
- name: postgres-server
image: registry.cn-chengdu.aliyuncs.com/liuchenyun/postgres:12
ports:
- containerPort: 5432
protocol: TCP
env:
- name: POSTGRES_PASSWORD
value: teamcity
- name: POSTGRES_USER
value: teamcity
- name: TZ
value: Asia/Shanghai
resources:
requests:
cpu: 30m
memory: 3Gi
volumeMounts:
- name: postgres-data
mountPath: /var/lib/postgresql/data
livenessProbe:
tcpSocket:
port: 5432
initialDelaySeconds: 60
timeoutSeconds: 20
periodSeconds: 30
successThreshold: 1
failureThreshold: 5
readinessProbe:
tcpSocket:
port: 5432
initialDelaySeconds: 30
timeoutSeconds: 20
periodSeconds: 30
successThreshold: 1
failureThreshold: 5
imagePullPolicy: Always
restartPolicy: Always
imagePullSecrets:
- name: dockercfg-liuchenyun