Initial commit
This commit is contained in:
Executable
+48
@@ -0,0 +1,48 @@
|
||||
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 }}
|
||||
Executable
+27
@@ -0,0 +1,27 @@
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ owncast_name | to_json }}
|
||||
namespace: {{ owncast_namespace | to_json }}
|
||||
annotations: {{ (owncast_ingress_annotations | combine({'cert-manager.io/cluster-issuer': owncast_cluster_issuer} if owncast_cluster_issuer | length > 0 else {})) | to_json }}
|
||||
spec:
|
||||
{% if owncast_ingress_class | length > 0 %}
|
||||
ingressClassName: {{ owncast_ingress_class | to_json }}
|
||||
{% endif %}
|
||||
rules:
|
||||
- host: {{ owncast_hostname | to_json }}
|
||||
http:
|
||||
paths:
|
||||
- path: /
|
||||
pathType: Prefix
|
||||
backend:
|
||||
service:
|
||||
name: {{ owncast_name | to_json }}
|
||||
port:
|
||||
number: 8080
|
||||
{% if owncast_tls_enabled | bool %}
|
||||
tls:
|
||||
- hosts:
|
||||
- {{ owncast_hostname | to_json }}
|
||||
secretName: {{ owncast_tls_secret_name | to_json }}
|
||||
{% endif %}
|
||||
Executable
+15
@@ -0,0 +1,15 @@
|
||||
apiVersion: tor.k8s.torproject.org/v1alpha2
|
||||
kind: OnionService
|
||||
metadata:
|
||||
name: {{ owncast_onion_name | to_json }}
|
||||
namespace: {{ owncast_namespace | to_json }}
|
||||
spec:
|
||||
version: 3
|
||||
rules:
|
||||
- port:
|
||||
number: 80
|
||||
backend:
|
||||
service:
|
||||
name: {{ owncast_name | to_json }}
|
||||
port:
|
||||
number: 8080
|
||||
Executable
+14
@@ -0,0 +1,14 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: {{ owncast_pvc_name | to_json }}
|
||||
namespace: {{ owncast_namespace | to_json }}
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
{% if owncast_storage_class | length > 0 %}
|
||||
storageClassName: {{ owncast_storage_class | to_json }}
|
||||
{% endif %}
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ owncast_storage_size | to_json }}
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ owncast_name | to_json }}
|
||||
namespace: {{ owncast_namespace | to_json }}
|
||||
annotations: {{ owncast_service_annotations | to_json }}
|
||||
spec:
|
||||
selector:
|
||||
app: {{ owncast_name | to_json }}
|
||||
type: {{ owncast_service_type | to_json }}
|
||||
{% if owncast_service_type in ['LoadBalancer', 'NodePort'] %}
|
||||
externalTrafficPolicy: {{ owncast_external_traffic_policy | to_json }}
|
||||
{% endif %}
|
||||
{% if owncast_service_type == 'LoadBalancer' and owncast_load_balancer_source_ranges | length > 0 %}
|
||||
loadBalancerSourceRanges: {{ owncast_load_balancer_source_ranges | to_json }}
|
||||
{% endif %}
|
||||
ports:
|
||||
- name: rtmp
|
||||
port: 1935
|
||||
targetPort: rtmp
|
||||
protocol: TCP
|
||||
- name: http
|
||||
port: 8080
|
||||
targetPort: http
|
||||
protocol: TCP
|
||||
Reference in New Issue
Block a user