infra4talos/apps-kustomized/peertube/deploy.yaml

88 lines
2.5 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app.kubernetes.io/instance: peertube
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: peertube
app.kubernetes.io/version: 1.16.0
helm.sh/chart: peertube-0.1.0
name: peertube
namespace: peertube
spec:
progressDeadlineSeconds: 600
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
app.kubernetes.io/instance: peertube
app.kubernetes.io/name: peertube
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 25%
type: RollingUpdate
template:
metadata:
creationTimestamp: null
labels:
app.kubernetes.io/instance: peertube
app.kubernetes.io/name: peertube
spec:
containers:
- command:
- /bin/sh
- -c
- install -g peertube -o peertube -m 666 /app/helm-config/production.yaml
/config/production.yaml && mkdir -p /var/www/peertube/storage/tmp && chown
-R peertube:peertube /var/www/peertube/storage && mkdir -p /root/.config
&& chown -R peertube:peertube /root/.config && /usr/local/bin/docker-entrypoint.sh
echo 0 && gosu peertube npm start
image: chocobozzz/peertube:v5.1.0-bullseye
imagePullPolicy: IfNotPresent
livenessProbe:
failureThreshold: 3
httpGet:
path: /
port: http
scheme: HTTP
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 1
name: peertube
ports:
- containerPort: 9000
name: http
protocol: TCP
readinessProbe:
failureThreshold: 3
httpGet:
path: /
port: http
scheme: HTTP
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 1
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /var/www/peertube
name: peertube
- mountPath: /app/helm-config
name: config
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
terminationGracePeriodSeconds: 30
volumes:
- name: peertube
persistentVolumeClaim:
claimName: peertube-data
- configMap:
defaultMode: 420
items:
- key: production.yaml
path: production.yaml
name: peertube-production-config
name: config