mirror of
https://github.com/jlengrand/sample-node-api.git
synced 2026-03-10 08:41:23 +00:00
Containerization work for sample-node-api
Signed-off-by: Adarshdeep Cheema <adarshdeep.cheema@ibm.com>
This commit is contained in:
135
container/sample-node-api.yml
Normal file
135
container/sample-node-api.yml
Normal file
@@ -0,0 +1,135 @@
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: sample-node-api
|
||||
namespace: zowe
|
||||
labels:
|
||||
app.kubernetes.io/name: zowe
|
||||
app.kubernetes.io/instance: zowe
|
||||
# app.kubernetes.io/version:
|
||||
app.kubernetes.io/component: sample-node-api
|
||||
# app.kubernetes.io/part-of:
|
||||
app.kubernetes.io/managed-by: manual
|
||||
spec:
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: zowe
|
||||
app.kubernetes.io/instance: zowe
|
||||
app.kubernetes.io/component: sample-node-api
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/name: zowe
|
||||
app.kubernetes.io/instance: zowe
|
||||
app.kubernetes.io/component: sample-node-api
|
||||
spec:
|
||||
securityContext:
|
||||
runAsUser: 20000
|
||||
runAsGroup: 20000
|
||||
fsGroup: 20000
|
||||
serviceAccountName: zowe-sa
|
||||
volumes:
|
||||
- name: zowe-runtime
|
||||
emptyDir: {}
|
||||
- name: zowe-instance
|
||||
emptyDir: {}
|
||||
- name: zowe-config
|
||||
configMap:
|
||||
name: zowe-config
|
||||
- name: zowe-keystore
|
||||
projected:
|
||||
sources:
|
||||
- configMap:
|
||||
name: zowe-certificates-cm
|
||||
- secret:
|
||||
name: zowe-certificates-secret
|
||||
- name: zowe-workspace
|
||||
persistentVolumeClaim:
|
||||
claimName: zowe-workspace-pvc
|
||||
containers:
|
||||
- name: sample-node-api
|
||||
image: zowe-docker-snapshot.jfrog.io/ompzowe/sample-node-api:1.0.0-ubuntu-amd64.containerization-6
|
||||
imagePullPolicy: Always
|
||||
resources:
|
||||
requests:
|
||||
memory: "64Mi"
|
||||
cpu: "10m"
|
||||
limits:
|
||||
memory: "128Mi"
|
||||
cpu: "100m"
|
||||
ports:
|
||||
- name: sna-port
|
||||
containerPort: 18000
|
||||
protocol: TCP
|
||||
readinessProbe:
|
||||
tcpSocket:
|
||||
port: 18000
|
||||
initialDelaySeconds: 30
|
||||
# this should give 18 * periodSeconds(default to 10) seconds about 3 minutes to confirm it's ready
|
||||
failureThreshold: 18
|
||||
command: ["/bin/bash", "-c"]
|
||||
args:
|
||||
- "/home/zowe/runtime/bin/internal/run-zowe.sh -c /home/zowe/instance"
|
||||
env:
|
||||
- name: ZWE_POD_NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
lifecycle:
|
||||
preStop:
|
||||
exec:
|
||||
command: ["/bin/sh", "-c", "/home/zowe/runtime/bin/internal/container-prestop.sh"]
|
||||
securityContext:
|
||||
readOnlyRootFilesystem: true
|
||||
volumeMounts:
|
||||
- name: zowe-runtime
|
||||
mountPath: "/home/zowe/runtime"
|
||||
- name: zowe-instance
|
||||
mountPath: "/home/zowe/instance"
|
||||
- name: zowe-config
|
||||
mountPath: "/home/zowe/instance/instance.env"
|
||||
subPath: instance.env
|
||||
readOnly: true
|
||||
- name: zowe-keystore
|
||||
mountPath: "/home/zowe/keystore/"
|
||||
readOnly: true
|
||||
- name: zowe-workspace
|
||||
mountPath: "/home/zowe/instance/workspace"
|
||||
initContainers:
|
||||
- name: init-zowe
|
||||
image: zowe-docker-release.jfrog.io/ompzowe/zowe-launch-scripts:latest-ubuntu
|
||||
imagePullPolicy: Always
|
||||
resources:
|
||||
requests:
|
||||
memory: "64Mi"
|
||||
cpu: "10m"
|
||||
limits:
|
||||
memory: "128Mi"
|
||||
cpu: "100m"
|
||||
securityContext:
|
||||
readOnlyRootFilesystem: true
|
||||
volumeMounts:
|
||||
- name: zowe-runtime
|
||||
mountPath: "/home/zowe/runtime"
|
||||
- name: zowe-instance
|
||||
mountPath: "/home/zowe/instance"
|
||||
---
|
||||
apiVersion: policy/v1beta1
|
||||
kind: PodDisruptionBudget
|
||||
metadata:
|
||||
name: sample-node-api-pdb
|
||||
namespace: zowe
|
||||
labels:
|
||||
app.kubernetes.io/name: zowe
|
||||
app.kubernetes.io/instance: zowe
|
||||
# app.kubernetes.io/version:
|
||||
app.kubernetes.io/component: pdb
|
||||
app.kubernetes.io/managed-by: manual
|
||||
spec:
|
||||
minAvailable: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: zowe
|
||||
app.kubernetes.io/instance: zowe
|
||||
app.kubernetes.io/component: sample-node-api
|
||||
Reference in New Issue
Block a user