-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathk8-deployment.yml
132 lines (132 loc) · 2.14 KB
/
k8-deployment.yml
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
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: flaskapp
spec:
replicas: 1
template:
metadata:
labels:
app: flaskapp
spec:
containers:
- image: vishnuhdadhich/visit-counter-web:latest
name: flaskapp
env:
- name: FLASK_DEBUG
value: "1"
---
apiVersion: v1
kind: Service
metadata:
name: flaskapp
spec:
type: NodePort
ports:
- name: "flaskapp"
port: 8000
targetPort: 8000
selector:
app: flaskapp
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nginx
spec:
replicas: 1
template:
metadata:
labels:
app: nginx
spec:
containers:
- image: vishnuhdadhich/visit-counter-nginx:latest
name: nginx
---
apiVersion: v1
kind: Service
metadata:
name: nginx
spec:
type: NodePort
ports:
- name: "nginx"
port: 80
targetPort: 80
nodePort: 31000
selector:
app: nginx
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: redis
spec:
replicas: 1
template:
metadata:
labels:
app: redis
spec:
containers:
- image: redis:alpine
name: redis
volumeMounts:
- mountPath: /data
name: redis-data
volumes:
- name: redis-data
emptyDir: {}
---
apiVersion: v1
kind: Service
metadata:
name: redis
spec:
type: ClusterIP
ports:
- port: 6379
targetPort: 6379
selector:
app: redis
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: postgres
spec:
replicas: 1
template:
metadata:
labels:
app: postgres
spec:
containers:
- image: vishnuhdadhich/visit-counter-postgres:latest
name: postgres
volumeMounts:
- mountPath: /var/lib/postgresql/data
name: pgdata
env:
- name: POSTGRES_PASSWORD
value: "password"
- name: POSTGRES_DB
value: "visit_counter"
volumes:
- name: pgdata
emptyDir: {}
---
apiVersion: v1
kind: Service
metadata:
name: postgres
spec:
type: ClusterIP
ports:
- port: 5432
targetPort: 5432
selector:
app: postgres
---