-
Notifications
You must be signed in to change notification settings - Fork 2
/
web-deployment.yaml
232 lines (232 loc) · 7.14 KB
/
web-deployment.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
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -f docker-compose.yml
kompose.version: 1.27.0 (HEAD)
creationTimestamp: null
labels:
io.kompose.service: web
name: web
namespace: mastodon
spec:
replicas: 3
selector:
matchLabels:
io.kompose.service: web
strategy:
type: Recreate
template:
metadata:
annotations:
kompose.cmd: kompose convert -f docker-compose.yml
kompose.version: 1.27.0 (HEAD)
creationTimestamp: null
labels:
io.kompose.network/external-network: "true"
io.kompose.network/internal-network: "true"
io.kompose.service: web
spec:
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: ScheduleAnyway
labelSelector:
matchLabels:
io.kompose.service: web
containers:
- args:
- bash
- -c
- rm -f /mastodon/tmp/pids/server.pid; bundle exec rails s -p 3000
env:
- name: AWS_ACCESS_KEY_ID
valueFrom:
secretKeyRef:
key: AWS_ACCESS_KEY_ID
name: mastodon-secrets
- name: AWS_SECRET_ACCESS_KEY
valueFrom:
secretKeyRef:
key: AWS_SECRET_ACCESS_KEY
name: mastodon-secrets
- name: SMTP_PASSWORD
valueFrom:
secretKeyRef:
key: SMTP_PASSWORD
name: mastodon-secrets
- name: DB_PASS
valueFrom:
secretKeyRef:
key: DB_PASS
name: mastodon-secrets
- name: SECRET_KEY_BASE
valueFrom:
secretKeyRef:
key: SECRET_KEY_BASE
name: mastodon-secrets
- name: VAPID_PRIVATE_KEY
valueFrom:
secretKeyRef:
key: VAPID_PRIVATE_KEY
name: mastodon-secrets
- name: VAPID_PUBLIC_KEY
valueFrom:
secretKeyRef:
key: VAPID_PUBLIC_KEY
name: mastodon-secrets
- name: OTP_SECRET
valueFrom:
secretKeyRef:
key: OTP_SECRET
name: mastodon-secrets
- name: DB_HOST
valueFrom:
configMapKeyRef:
key: DB_HOST
name: env-production
- name: DB_NAME
valueFrom:
configMapKeyRef:
key: DB_NAME
name: env-production
- name: DB_PORT
valueFrom:
configMapKeyRef:
key: DB_PORT
name: env-production
- name: DB_USER
valueFrom:
configMapKeyRef:
key: DB_USER
name: env-production
- name: ES_ENABLED
valueFrom:
configMapKeyRef:
key: ES_ENABLED
name: env-production
- name: ES_HOST
valueFrom:
configMapKeyRef:
key: ES_HOST
name: env-production
- name: ES_PORT
valueFrom:
configMapKeyRef:
key: ES_PORT
name: env-production
- name: LOCAL_DOMAIN
valueFrom:
configMapKeyRef:
key: LOCAL_DOMAIN
name: env-production
- name: MAX_THREADS
valueFrom:
configMapKeyRef:
key: MAX_THREADS
name: env-production
- name: REDIS_HOST
valueFrom:
configMapKeyRef:
key: REDIS_HOST
name: env-production
- name: REDIS_PASSWORD
valueFrom:
configMapKeyRef:
key: REDIS_PASSWORD
name: env-production
- name: REDIS_PORT
valueFrom:
configMapKeyRef:
key: REDIS_PORT
name: env-production
- name: S3_ALIAS_HOST
valueFrom:
configMapKeyRef:
key: S3_ALIAS_HOST
name: env-production
- name: S3_BUCKET
valueFrom:
configMapKeyRef:
key: S3_BUCKET
name: env-production
- name: S3_ENABLED
valueFrom:
configMapKeyRef:
key: S3_ENABLED
name: env-production
- name: S3_ENDPOINT
valueFrom:
configMapKeyRef:
key: S3_ENDPOINT
name: env-production
- name: S3_HOSTNAME
valueFrom:
configMapKeyRef:
key: S3_HOSTNAME
name: env-production
- name: S3_PROTOCOL
valueFrom:
configMapKeyRef:
key: S3_PROTOCOL
name: env-production
- name: S3_REGION
valueFrom:
configMapKeyRef:
key: S3_REGION
name: env-production
- name: SINGLE_USER_MODE
valueFrom:
configMapKeyRef:
key: SINGLE_USER_MODE
name: env-production
- name: SMTP_AUTH_METHOD
valueFrom:
configMapKeyRef:
key: SMTP_AUTH_METHOD
name: env-production
- name: SMTP_ENABLE_STARTTLS
valueFrom:
configMapKeyRef:
key: SMTP_ENABLE_STARTTLS
name: env-production
- name: SMTP_FROM_ADDRESS
valueFrom:
configMapKeyRef:
key: SMTP_FROM_ADDRESS
name: env-production
- name: SMTP_LOGIN
valueFrom:
configMapKeyRef:
key: SMTP_LOGIN
name: env-production
- name: SMTP_OPENSSL_VERIFY_MODE
valueFrom:
configMapKeyRef:
key: SMTP_OPENSSL_VERIFY_MODE
name: env-production
- name: SMTP_PORT
valueFrom:
configMapKeyRef:
key: SMTP_PORT
name: env-production
- name: SMTP_SERVER
valueFrom:
configMapKeyRef:
key: SMTP_SERVER
name: env-production
- name: WEB_DOMAIN
valueFrom:
configMapKeyRef:
key: WEB_DOMAIN
name: env-production
image: tootsuite/mastodon:v4.0.2
livenessProbe:
httpGet:
path: /health
port: 3000
name: web
ports:
- containerPort: 3000
restartPolicy: Always
status: {}