apiVersion: apps/v1 kind: Deployment metadata: name: {{ owncast_name | to_json }} namespace: {{ owncast_namespace | to_json }} labels: app: {{ owncast_name | to_json }} spec: replicas: 1 # The SQLite database and RWO volume must have only one writer. strategy: type: Recreate rollingUpdate: null selector: matchLabels: app: {{ owncast_name | to_json }} template: metadata: labels: app: {{ owncast_name | to_json }} spec: automountServiceAccountToken: false imagePullSecrets: {{ owncast_image_pull_secrets | to_json }} nodeSelector: {{ owncast_node_selector | to_json }} tolerations: {{ owncast_tolerations | to_json }} containers: - name: owncast image: {{ owncast_image | to_json }} imagePullPolicy: {{ owncast_image_pull_policy | to_json }} securityContext: allowPrivilegeEscalation: false capabilities: drop: [ALL] seccompProfile: type: RuntimeDefault resources: {{ owncast_resources | to_json }} volumeMounts: - name: data mountPath: /app/data ports: - name: http containerPort: 8080 - name: rtmp containerPort: 1935 volumes: - name: data persistentVolumeClaim: claimName: {{ (owncast_existing_claim if owncast_existing_claim | length > 0 else owncast_pvc_name) | to_json }}