93 lines
No EOL
2.3 KiB
YAML
93 lines
No EOL
2.3 KiB
YAML
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: nocodb
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: nocodb
|
|
replicas: 1
|
|
strategy:
|
|
type: Recreate
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: nocodb
|
|
spec:
|
|
containers:
|
|
- name: nocodb
|
|
image: nocodb
|
|
envFrom:
|
|
- secretRef:
|
|
name: nocodb-base-config
|
|
- secretRef:
|
|
name: nocodb-secret-config
|
|
ports:
|
|
- containerPort: 8080
|
|
protocol: TCP
|
|
name: web
|
|
volumeMounts:
|
|
- mountPath: /usr/app/data
|
|
name: nocodb-metadata
|
|
- mountPath: /usr/src/app/
|
|
name: app-volume
|
|
- mountPath: /tmp
|
|
name: app-tmp
|
|
livenessProbe:
|
|
httpGet:
|
|
path: /api/v1/health
|
|
port: web
|
|
scheme: HTTP
|
|
initialDelaySeconds: 10
|
|
timeoutSeconds: 3
|
|
periodSeconds: 5
|
|
successThreshold: 1
|
|
failureThreshold: 3
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /api/v1/health
|
|
port: web
|
|
scheme: HTTP
|
|
initialDelaySeconds: 5
|
|
timeoutSeconds: 3
|
|
periodSeconds: 5
|
|
successThreshold: 1
|
|
failureThreshold: 3
|
|
resources:
|
|
requests:
|
|
memory: "168Mi"
|
|
cpu: "50m"
|
|
limits:
|
|
memory: "256Mi"
|
|
cpu: "500m"
|
|
securityContext:
|
|
allowPrivilegeEscalation: false
|
|
capabilities:
|
|
drop:
|
|
- ALL
|
|
readOnlyRootFilesystem: true
|
|
affinity:
|
|
nodeAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- weight: 100
|
|
preference:
|
|
matchExpressions:
|
|
- key: kubernetes.io/arch
|
|
operator: In
|
|
values:
|
|
- arm64
|
|
volumes:
|
|
- name: nocodb-metadata
|
|
persistentVolumeClaim:
|
|
claimName: nocodb-metadata
|
|
- name: app-volume
|
|
emptyDir:
|
|
sizeLimit: 1500Mi
|
|
- name: app-tmp
|
|
emptyDir:
|
|
sizeLimit: 500Mi
|
|
securityContext:
|
|
runAsUser: 1000
|
|
runAsGroup: 1000
|
|
runAsNonRoot: true |