heimdall-k8s/deployment.yaml
2022-08-22 20:36:26 -07:00

45 lines
1.9 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: heimdall # < name of the deployment
namespace: heimdall # < namespace where place the deployment and pods
labels:
app: heimdall # < label for tagging and reference
spec:
replicas: 1 # < number of pods to deploy
selector:
matchLabels:
app: heimdall
strategy:
rollingUpdate:
maxSurge: 0 # < The number of pods that can be created above the desired amount of pods during an update
maxUnavailable: 1 # < The number of pods that can be unavailable during the update process
type: RollingUpdate # < New pods are added gradually, and old pods are terminated gradually
template:
metadata:
labels:
app: heimdall
spec:
volumes:
- name: heimdall-data
persistentVolumeClaim:
claimName: heimdall-claim
containers:
- image: ghcr.io/linuxserver/heimdall:2.4.13 # < the name of the docker image we will use
name: heimdall # < name of container
imagePullPolicy: Always # < always use the latest image when creating container/pod
env: # < the environment variables required (see container documentation)
- name: PGID
value: "1000"
- name: PUID
value: "1000"
- name: TZ
value: "America/Los_Angeles"
ports: # < the ports required (see container documentation)
- containerPort: 80
name: http-80
protocol: TCP
volumeMounts: # < the volume mount in the container. Look at the relation volumelabel->pvc->pv
- mountPath: /config # < mount location in the container
name: heimdall-data # < volumelabel configured earlier in the yaml file