--- apiVersion: apps/v1 kind: $JNLP_CONTROL metadata: name: $DRONE_REPO_NAME namespace: $JNLP_ENV labels: app: $DRONE_REPO_NAME spec: serviceName: $DRONE_REPO_NAME replicas: $JNLP_REPLICAS selector: matchLabels: app: $DRONE_REPO_NAME template: metadata: labels: app: $DRONE_REPO_NAME spec: terminationGracePeriodSeconds: 180 dnsPolicy: ClusterFirstWithHostNet dnsConfig: nameservers: - 223.5.5.5 - 223.6.6.6 initContainers: - name: init image: $JNLP_REPO/dev/busybox command: ["chmod","777","-R","$JNLP_MOUNT_PATH"] imagePullPolicy: Always volumeMounts: - name: volume mountPath: $JNLP_MOUNT_PATH containers: - name: $DRONE_REPO_NAME image: $JNLP_REPO/$JNLP_ENV/$DRONE_REPO_NAME:$JNLP_TAG imagePullPolicy: Always env: - name: JAVA_OPTS value: $JNLP_JAVA_OPTS -Dspring.profiles.active=$JNLP_ACTIVE_PROFILE ports: - containerPort: $JNLP_CONTAINER_PORT name: port volumeMounts: - name: volume mountPath: $JNLP_MOUNT_PATH lifecycle: preStop: exec: command: ["/bin/sh","-c","curl -H 'loginName:admin' -H 'password:ea1so2ua3dm4in5' -X POST 127.0.0.1:8080/actuator/shutdown"] livenessProbe: tcpSocket: port: $JNLP_CONTAINER_PORT initialDelaySeconds: $JNLP_LIVENESS_INIT periodSeconds: $JNLP_LIVENESS_PER readinessProbe: tcpSocket: port: $JNLP_CONTAINER_PORT initialDelaySeconds: $JNLP_READINESS_INIT periodSeconds: $JNLP_READINESS_PER volumeClaimTemplates: - metadata: name: volume spec: accessModes: ["ReadWriteOnce"] storageClassName: $JNLP_STORAGE_CLASS #ceph-block resources: requests: storage: $JNLP_STORAGE_CAPACITY --- apiVersion: v1 kind: Service metadata: name: $DRONE_REPO_NAME-svc namespace: $JNLP_ENV labels: app: $DRONE_REPO_NAME-svc spec: type: NodePort ports: - port: $JNLP_CONTAINER_PORT targetPort: $JNLP_CONTAINER_PORT selector: app: $DRONE_REPO_NAME --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: $DRONE_REPO_NAME-ingress namespace: $JNLP_ENV spec: rules: - host: $JNLP_ENV-$DRONE_REPO_NAME$JNLP_DOMAIN #$JNLP_ENV-$DRONE_REPO_NAME$JNLP_DOMAIN datagroup-pro-ums.ieasou.cn http: paths: - path: / pathType: Prefix backend: service: name: $DRONE_REPO_NAME-svc port: number: $JNLP_CONTAINER_PORT ingressClassName: nginx