81 lines
2.2 KiB
YAML
81 lines
2.2 KiB
YAML
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
labels:
|
|
app: $JAVA_MODEL
|
|
name: $JAVA_MODEL
|
|
namespace: $DOCKERHUB_NAMESPACE #一定要写名称空间 由jenkinsfile通过sed命令替换
|
|
spec:
|
|
progressDeadlineSeconds: 600
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: $JAVA_MODEL
|
|
strategy:
|
|
rollingUpdate:
|
|
maxSurge: 50%
|
|
maxUnavailable: 50%
|
|
type: RollingUpdate
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: $JAVA_MODEL
|
|
spec:
|
|
imagePullSecrets:
|
|
- name: $DOCKER_CREDENTIAL_ID #提前在k8s的DevOps项目下配置访问镜像服务的账号密码
|
|
containers:
|
|
- image: $REGISTRY/$DOCKERHUB_NAMESPACE/$DOCKERHUB_NAMESPACE:$JAVA_MODEL-$SNAPSHOT-v$BUILD_NUMBER #$开头的都将在cicd中通过sed指令替换
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /actuator/health
|
|
port: $SERVER_PORT
|
|
timeoutSeconds: 30
|
|
failureThreshold: 30
|
|
periodSeconds: 20
|
|
imagePullPolicy: Always
|
|
name: app
|
|
ports:
|
|
- containerPort: $SERVER_PORT
|
|
protocol: TCP
|
|
resources:
|
|
requests: #资源请求的设置
|
|
memory: 1024Mi #内存清楚,容器启动的初始可用数量
|
|
limits:
|
|
memory: 1024Mi
|
|
volumeMounts:
|
|
- mountPath: /home/heyu/logs
|
|
name: api-logs
|
|
- name: host-time
|
|
readOnly: true
|
|
mountPath: /etc/localtime
|
|
terminationMessagePath: /nfs/data/heyu/api/logs
|
|
terminationMessagePolicy: File
|
|
dnsPolicy: ClusterFirst
|
|
restartPolicy: Always
|
|
terminationGracePeriodSeconds: 30
|
|
volumes:
|
|
- name: api-logs
|
|
hostPath:
|
|
path: /nfs/data/heyu/api/logs
|
|
- name: host-time
|
|
hostPath:
|
|
path: /etc/localtime
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
labels:
|
|
app: $JAVA_MODEL
|
|
name: $JAVA_MODEL
|
|
namespace: $DOCKERHUB_NAMESPACE
|
|
spec:
|
|
ports:
|
|
- name: http
|
|
port: $SERVER_PORT
|
|
protocol: TCP
|
|
targetPort: $SERVER_PORT
|
|
selector:
|
|
app: $JAVA_MODEL
|
|
sessionAffinity: None
|
|
type: ClusterIP
|