forked from l7mp/stunner
-
Notifications
You must be signed in to change notification settings - Fork 0
/
kurento-one2one-call-server.yaml
155 lines (150 loc) · 7.33 KB
/
kurento-one2one-call-server.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
apiVersion: v1
kind: Secret
metadata:
name: webrtc-server-secret
# namespace: stunner
type: kubernetes.io/tls
data:
tls.crt: |
LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURCakNDQWU0Q0NRQ3VmNVFmeVgyb0REQU5CZ2txaGtpRzl3MEJBUXNGQURCRk1Rc3dDUVlEVlFRR0V3SkIKVlRFVE1CRUdBMVVFQ0F3S1UyOXRaUzFUZEdGMFpURWhNQjhHQTFVRUNnd1lTVzUwWlhKdVpYUWdWMmxrWjJsMApjeUJRZEhrZ1RIUmtNQjRYRFRFME1Ea3lPVEE1TkRjek5Wb1hEVEUxTURreU9UQTVORGN6TlZvd1JURUxNQWtHCkExVUVCaE1DUVZVeEV6QVJCZ05WQkFnTUNsTnZiV1V0VTNSaGRHVXhJVEFmQmdOVkJBb01HRWx1ZEdWeWJtVjAKSUZkcFpHZHBkSE1nVUhSNUlFeDBaRENDQVNJd0RRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQgpBTUpPeU9ISitySldKRVE3UDdrS29XYTMxZmY3aEtOWnhGNnNZRTVsRmkzcEJZV0lZNmtUTi9pVWF4SkxST0ZvCkZob0MvTS9TVFk3NnJJcnlpeDQ3NHYvNmNSb0c4TitHUUJFbjRJQVAxVWl0V3pWTzZwVnZCYUl0NUlLbGhoZm0KWUExSU13ZUNkMDN2TGNhSFRkZE5tRkRCVGtzN1FEd2ZlblRhUjVWaktZYzNPdEVoY0c4ZGdMQW5PamJiazJIcgo4d3RlcjJJZU5na2h5YTN6eW9YblRMVDhtOElNZzJtUWFKczYyWGxvOWdzNTZ1cnZWRFdHNHJoZEd5YmoxdXdVClppRFl5UDRDRkNVSFM2VVZ0MTJ2QURQOHZqYndtc3MyU2NHc0lmME5qYVUrTXBTZEViQjgyejRiMk5pTjhXcSsKckZBL0pidnllb1dXSE1vYTd3a1ZzMU1DQXdFQUFUQU5CZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUFZTFJ3VjlmbwpBT2hKZmVLMTk5VHY2b1hvTlNTU2UxMHBWTG5ZeFBjY3pDVlE0YjlTb21LRkpGYm13dFBWR2k2dzNtKzhtVjdGCjlJMldLeWVCSHptemZXMnV0Wk51cFZ5YnhnekVqdUZMT1Z5dFNQZHNCK0RjSm9tT2k4Vy9DZjJWazhXeWtiL3QKQ3RyMWdmT2NJOHJ3RUdLeG0yNzlzcEJzMHUxc256b0x5b2ltYk1iaVhiQzgyajFJaU4zSnVzMDhVMDdtL2o3TgpoUkJDcGVIalVIVDNDUnB2WXlUUm50K0F5QmQ4Qml5SkI3bldtY05JMURrc1hQZmVoZDYyTUFGUzllMVpFK2RICkFhdmcvVThWcFM3cGNDUWNQSnZJSjJoZWhydDhMNmtVazNZVVlxWjBPZVJaSzI3ZjJSNSt3RmxERjMzZXNtM04KZENTc0xKbFh5cUFRRmc9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
tls.key: |
LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb2dJQkFBS0NBUUVBd2s3STRjbjZzbFlrUkRzL3VRcWhacmZWOS91RW8xbkVYcXhnVG1VV0xla0ZoWWhqCnFSTTMrSlJyRWt0RTRXZ1dHZ0w4ejlKTmp2cXNpdktMSGp2aS8vcHhHZ2J3MzRaQUVTZmdnQS9WU0sxYk5VN3EKbFc4Rm9pM2tncVdHRitaZ0RVZ3pCNEozVGU4dHhvZE4xMDJZVU1GT1N6dEFQQjk2ZE5wSGxXTXBoemM2MFNGdwpieDJBc0NjNk50dVRZZXZ6QzE2dlloNDJDU0hKcmZQS2hlZE10UHlid2d5RGFaQm9tenJaZVdqMkN6bnE2dTlVCk5ZYml1RjBiSnVQVzdCUm1JTmpJL2dJVUpRZExwUlczWGE4QU0veStOdkNheXpaSndhd2gvUTJOcFQ0eWxKMFIKc0h6YlBodlkySTN4YXI2c1VEOGx1L0o2aFpZY3locnZDUld6VXdJREFRQUJBb0lCQUN3dDU2VFczTVp4cVp0Tgo4V1lzVVpoZVVpc3BKL1pRTWNMbzVKak9pU1YxSndrK2dwSnR5VHNlMjkxeitieGFnelAwMi9DUXU0dTMyVVZhCmNtRTBjcCtMSE80ekI4OTY0ZFJFd2RtOFA5MWZkUzZBdS91d0c1TE5abmlDRkNRWkFGdmt2NTJFZjRYYnpRZW4KdWY0cktXZXJIQmNrNkswQzV6L3NaWHhFNkt0U2NFMlpMVW1raE8wbmtITTZNQTZnRmsyT01uQitvRFRPV1dQdAoxbWxyZVFsenVNWUcvRDRheHZpUllyT1NZQ0U1UXUxU093L0RFT0xRcXFlQmpRckt0QXlPbEZIWnNJUjZsQmZlCktITUNoUFVjWUl3YW93dDJEY3FIL0ErQUZYUnRhaWZhNkR2SDhZdWwrMnZBcDQ3VUVwYWVuVmZNNWJwTjMzWFYKRXplcmp0RUNnWUVBK3hpWHpibGVrNjdpUWdScGM5ZUhTb3FzNGlSTGhhZThzOGtwQUc1MUp6NDZKZStEbWl1bQpYVjc2OW9pVUdVeEJlb1ViN3J5Vys0TU96SEphQTFCZkdlalFTdndMSUI5ZTRjbmlrcW5BQXJjcWJjQWNPQ0wxCmFZWURpU21TbU4vQW9rTlpsUEtFQkZYUDlielhyVTlzbVFKV05USGxjUmw3SlhmbndGK2p3TnNDZ1lFQXhocEUKU0JyOXZsVVZITmgvUzZDNWk4ME5JWWc2akN5MkZnc211ekVxbWNxVjBwVHl6ZWdtcThicnUrUW11dm9VajJvNApuVnY0SjlkMWZMRjZFQ1VWazlhSzhVZEpPT0I2aEFmdXJPZEpDQXJncnNZLzl0NHVEelhmYlBDZGZTTlFJVEUwClhnZU5HUVgxRXp2d3drQm15WktrMGtMSXIzc3lQOFpDV2ZYRFJPa0NnWUJSK2RGMXBKTXYrK1I2VVI1c1oyMFAKOVA1RVJqMHh3WFZsN01LcUZXWENEaHJGejlCVFFQVHJmdHJJS2diUHk0bUZDbmY0RlRIbG92L3QxMWR6eFlXRwoyKzlFeTh5R0REZloxeU5WWm4zOVpQZEJKWHNSQ0xpK1hyWkF6WVhDeXlvRXo2QXJkSkdOS01iZ0gycjZkZmVxCmJJemdpUTJ6UXZKbFpTUVFOaWtzQ1FLQmdDZ3d6QW1VOEVYZEhSdHRFT1pYQlUzSG5CSmhnUDlQVXVIR0FXV1kKNC91dmpoWGJBaWVrSWJSWDl4dDNmaVFRK0hyZ0lmeEszRjI0NkswVGxLQVI1ZjdJV0FmN1htK2JteitPSEc0WAp2a2xUYTZJSnRwQnZJd2tTOVBFMUg3NXptNTRnVFcrR09Lb0srMTJibTR6TlpBMGhJeTlGUFZIY3ZLVVRwQUo4ClNkR0JBb0dBSEx0Sm5CMU5PNEVnTzZXdExRTVh0N0hySWJ1cDhlWmk4LzgyZ0MzNDIyQytvb0tJcllRMDdxU3cKbkJPTy9HME9CNHlkNnZDRTJ4NStUV1NTQ1lHZ0c1QThhSXY1cVA3NlJQNGhvdkdIeEcveTJ0Zm90dzVVdU9yaApuRldsVFA0VXJzOFBleWt2SzlhbzhyL1Q4Qm5QSUMxNlU2RU5ZdkFjMG1SbEZBMmoxR0E9Ci0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg==
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: kms
spec:
strategy:
type: Recreate
selector:
matchLabels:
app: kms
replicas: 1 # tells deployment to run 1 pods matching the template
template: # create pods using pod definition in this template
metadata:
labels:
app: kms
spec:
containers:
- name: kms
image: docker.io/kurento/kurento-media-server:latest
# image: kurento/kurento-media-server:6.7.1-xenial
imagePullPolicy: Always
env:
- name: "GST_DEBUG"
# value: "Kurento*:5"
# value: "5"
# value: "3,sdp*:5,webrtc*:5,*dtls*:6"
value: "4,*sdp*:6,*webrtc*:6,*endpoint*:6,agnosticbin:6,KurentoWebSocket*:6"
- name: "KMS_ICE_TCP"
value: "0"
- name: "KMS_STUN_IP"
value: ""
- name: "KMS_STUN_PORT"
value: ""
- name: "KMS_TURN_URL"
value: ""
- name: "KMS_NETWORK_INTERFACES"
value: "eth0"
- name: "KMS_MIN_PORT"
value: "10000"
- name: "KMS_MAX_PORT"
value: "20000"
- name: "KMS_EXTERNAL_IPV4"
value: ""
ports:
- containerPort: 8888
# Uncomment this if you want to deploy a sidecar container to sniff traffic
# - name: net-debug
# image: l7mp/net-debug:latest
# command: ["/bin/sh"]
# args: ["-c", "while true; do echo hello; sleep 10;done"]
---
apiVersion: v1
kind: Service
metadata:
name: kms
namespace: default
labels:
app: kms
spec:
selector:
app: kms
ports:
- port: 8888
protocol: TCP
name: kms-port
- port: 9999
protocol: UDP
name: kms-media-plane-port
# WebRTC application server
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: webrtc-server
# namespace: stunner
spec:
selector:
matchLabels:
app: webrtc-server
replicas: 1
template:
metadata:
labels:
app: webrtc-server
spec:
containers:
- name: webrtc-server
image: docker.io/l7mp/kurento-one2one-call-server
imagePullPolicy: Always
# image: localhost/l7mp/kurento-one2one-call-server
# imagePullPolicy: Never
# command: [ "sleep" ]
# args: [ "infinity" ]
command: ["npm"]
args: ["start", "--", "--as_uri=https://0.0.0.0:8443", "--ws_uri=ws://kms.default.svc.cluster.local:8888/kurento"]
ports:
- containerPort: 8443
# TURN server config to return to the user
env:
- name: STUNNER_AUTH_ADDR
value: "stunner-auth.stunner-system.svc.cluster.local"
- name: STUNNER_AUTH_PORT
value: "8088"
# - name: STUNNER_NAMESPACE
# value: "stunner"
# - name: STUNNER_GATEWAY
# value: "udp-gateway"
# - name: STUNNER_LISTENER
# value: "udp-listener"
volumeMounts:
- name: webrtc-server-tls
mountPath: "/app/keys"
readOnly: true
volumes:
- name: webrtc-server-tls
secret:
secretName: webrtc-server-secret
items:
- key: tls.crt
path: server.crt
- key: tls.key
path: server.key
---
apiVersion: v1
kind: Service
metadata:
name: webrtc-server
# namespace: stunner
labels:
app: webrtc-server
spec:
type: LoadBalancer
selector:
app: webrtc-server
ports:
- port: 8443
protocol: TCP
name: webrtc-server-port