-
Notifications
You must be signed in to change notification settings - Fork 6
/
k8s-timerboard-full.yaml
131 lines (131 loc) · 2.61 KB
/
k8s-timerboard-full.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
#
# Static website
#
apiVersion: v1
kind: Service
metadata:
name: timerboard-static
spec:
ports:
- port: 80
selector:
name: timerboard-static
type: NodePort
---
apiVersion: v1
kind: ReplicationController
metadata:
name: timerboard-static
spec:
replicas: 1
template:
metadata:
labels:
name: timerboard-static
spec:
containers:
- name: timerboard-static-crest-sov-tq
image: andimiller/timerboard-net-fozziesov
ports:
- containerPort: 80
protocol: "TCP"
livenessProbe:
httpGet:
path: /
port: 80
initialDelaySeconds: 15
timeoutSeconds: 1
---
#
# API backend
#
apiVersion: v1
kind: Service
metadata:
name: timerboard-api
spec:
ports:
- port: 8080
selector:
name: timerboard-api
type: NodePort
---
apiVersion: v1
kind: ReplicationController
metadata:
name: timerboard-api
spec:
replicas: 1
template:
metadata:
labels:
name: timerboard-api
spec:
containers:
- name: timerboard-net-backend
image: andimiller/timerboard-net-backend
env:
- name: xms
value: "128m"
- name: xmx
value: "512m"
- name: port
value: "8080"
- name: host
value: "0.0.0.0"
# uncomment this if you want to report to graphite, this reports to the `monitoring-graphite` service in the `monitoring` namespace
#- name: graphite
# value: "--graphite monitoring-graphite.monitoring --graphite_prefix app.timerboard-backend.$HOSTNAME"
ports:
- containerPort: 8080
protocol: "TCP"
---
#
# Routing
#
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: waterslide
namespace: default
annotations:
# kubernetes.io/tls-acme: "true"
kubernetes.io/ingress.class: "nginx"
spec:
rules:
- host: timerboard.net
http:
paths:
- path: /
backend:
serviceName: timerboard-static
servicePort: 80
- path: /stream
backend:
serviceName: timerboard-api
servicePort: 8080
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: waterslide-tls
annotations:
kubernetes.io/tls-acme: "true"
kubernetes.io/ingress.class: "nginx"
spec:
tls:
- hosts:
- beta.timerboard.net
secretName: waterslide-tls
rules:
- host: beta.timerboard.net
http:
paths:
- path: /
backend:
serviceName: timerboard-static
servicePort: 80
- path: /stream
backend:
serviceName: timerboard-api
servicePort: 8080