Skip to content

Instantly share code, notes, and snippets.

@making
Created June 23, 2025 04:11
Show Gist options
  • Select an option

  • Save making/3d32b0ac35ece4ac7f3ef70f168e58f2 to your computer and use it in GitHub Desktop.

Select an option

Save making/3d32b0ac35ece4ac7f3ef70f168e58f2 to your computer and use it in GitHub Desktop.
---
# Source: application/templates/service.yaml
apiVersion: v1
kind: Service
metadata:
name: demo-gemfire
namespace: demo
labels:
helm.sh/chart: application-6.2.1
app.kubernetes.io/version: "jvm"
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/part-of: demo-gemfire
spec:
type: ClusterIP
selector:
app.kubernetes.io/name: demo-gemfire
ports:
- name: http
port: 8080
protocol: TCP
targetPort: 8080
---
# Source: application/templates/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
helm.sh/chart: application-6.2.1
app.kubernetes.io/version: "jvm"
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/part-of: demo-gemfire
annotations:
reloader.stakater.com/auto: "true"
name: demo-gemfire
namespace: demo
spec:
selector:
matchLabels:
app.kubernetes.io/name: demo-gemfire
strategy:
type: RollingUpdate
revisionHistoryLimit: 2
template:
metadata:
labels:
app.kubernetes.io/name: demo-gemfire
spec:
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm:
labelSelector:
matchLabels:
app.kubernetes.io/part-of: demo-gemfire
topologyKey: kubernetes.io/hostname
weight: 1
containers:
- name: demo-gemfire
image: ghcr.io/making/demo-gemfire:jvm
imagePullPolicy: Always
ports:
- containerPort: 8080
name: http
protocol: TCP
env:
- name: gemfire.locators
value: demo-locator-0.demo-locator.demo.svc.cluster.local:10334,demo-locator-1.demo-locator.demo.svc.cluster.local:10334
- name: gemfire.properties.ssl-enabled-components
value: all
- name: gemfire.properties.ssl-endpoint-identification-enabled
value: "true"
- name: gemfire.properties.ssl-keystore
value: /certs/truststore.p12
- name: gemfire.properties.ssl-keystore-password
valueFrom:
secretKeyRef:
key: password
name: demo-cert
- name: gemfire.properties.ssl-truststore
value: /certs/keystore.p12
- name: gemfire.properties.ssl-truststore-password
valueFrom:
secretKeyRef:
key: password
name: demo-cert
livenessProbe:
failureThreshold: 30
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 1
initialDelaySeconds:
httpGet:
path: /actuator/health/liveness
port: 8080
scheme: HTTP
readinessProbe:
failureThreshold: 30
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 1
initialDelaySeconds:
httpGet:
path: /actuator/health/readiness
port: 8080
scheme: HTTP
volumeMounts:
- name: cert-volume
mountPath: /certs
resources:
limits:
memory: 768Mi
requests:
memory: 768Mi
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
readOnlyRootFilesystem: false
runAsNonRoot: true
runAsUser: 1002
seccompProfile:
type: RuntimeDefault
volumes:
- name: cert-volume
secret:
secretName: demo-cert
terminationGracePeriodSeconds:
---
# Source: application/templates/ingress.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: demo-gemfire
namespace: demo
labels:
helm.sh/chart: application-6.2.1
app.kubernetes.io/version: "jvm"
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/part-of: demo-gemfire
annotations:
projectcontour.io/tls-cert-namespace: projectcontour
spec:
rules:
- host: demo-gemfire.lan.ik.am
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: demo-gemfire
port:
name: http
tls:
- hosts:
- demo-gemfire.lan.ik.am
secretName: default-tls
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment