-
Notifications
You must be signed in to change notification settings - Fork 1
/
playbook.servers.yml
294 lines (261 loc) · 5.91 KB
/
playbook.servers.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
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
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
---
- import_playbook: playbook.constructor.yml
- name: servers host setup
hosts: servers
become: true
roles:
- system-security
- journalctl
- health-disc-space
- cleanup-disc-space
- health-btrfs
- system-btrfs-auto-balancer
# Docker Roles
- name: setup nextcloud hosts
hosts: nextcloud_server
become: true
roles:
- role: docker-nextcloud
vars:
domain: "{{domain_nextcloud}}"
http_port: 8001
- name: setup gitea hosts
hosts: gitea
become: true
roles:
- role: docker-gitea
vars:
domain: "{{domain_gitea}}"
http_port: 8002
ssh_port: 2201
run_mode: prod
- name: setup wordpress hosts
hosts: wordpress
become: true
roles:
- role: docker-wordpress
vars:
domains: "{{domains_wordpress}}"
http_port: 8003
- name: setup mediawiki hosts
hosts: mediawiki
become: true
roles:
- role: docker-mediawiki
vars:
domain: "{{domain_mediawiki}}"
http_port: 8004
- name: setup mybb hosts
hosts: mybb
become: true
roles:
- role: docker-mybb
vars:
domains: "{{domains_mybb}}"
http_port: 8005
- name: setup yourls hosts
hosts: yourls
become: true
roles:
- role: docker-yourls
vars:
domain: "{{domain_yourls}}"
http_port: 8006
- name: setup mailu hosts
hosts: mailu
become: true
roles:
- role: docker-mailu
vars:
domain: "{{domain_mailu}}"
http_port: 8007
enable_central_database: "{{enable_central_database_mailu}}"
- name: setup elk hosts
hosts: elk
become: true
roles:
- role: docker-elk
vars:
domain: "{{domain_elk}}"
http_port: 8008
- name: setup mastodon hosts
hosts: mastodon
become: true
roles:
- role: docker-mastodon
vars:
domain: "{{domain_mastodon}}"
domains: "{{ [domain] + domains_mastodon_alternates }}"
http_port: 8009
stream_port: 4001
- name: setup pixelfed hosts
hosts: pixelfed
become: true
roles:
- role: docker-pixelfed
vars:
domain: "{{domain_pixelfed}}"
http_port: 8010
- name: setup peertube hosts
hosts: peertube
become: true
roles:
- role: docker-peertube
vars:
domain: "{{domain_peertube}}"
domains: "{{ [domain] + domains_peertube }}"
http_port: 8011
- name: setup bigbluebutton hosts
hosts: bigbluebutton
become: true
roles:
- role: docker-bigbluebutton
vars:
domain: "{{domain_bigbluebutton}}"
- name: setup funkwhale hosts
hosts: funkwhale
become: true
roles:
- role: docker-funkwhale
vars:
domain: "{{domain_funkwhale}}"
http_port: 8012
- name: setup roulette-wheel hosts
hosts: roulette_wheel
become: true
roles:
- role: docker-roulette-wheel
vars:
domain: "{{domain_roulette}}"
http_port: 8013
- name: setup joomla hosts
hosts: joomla
become: true
roles:
- role: docker-joomla
vars:
domain: "{{joomla_domains}}"
http_port: 8014
- name: setup attendize
hosts: attendize
become: true
roles:
- role: docker-attendize
vars:
domain: "{{domain_attendize}}"
http_port: 8015
mail_interface_http_port: 8016
- name: setup baserow hosts
hosts: baserow
become: true
roles:
- role: docker-baserow
vars:
domain: "{{domain_baserow}}"
http_port: 8017
- name: setup matomo hosts
hosts: matomo
become: true
roles:
- role: docker-matomo
vars:
domain: "{{domain_matomo}}"
http_port: 8018
- name: setup listmonk
hosts: listmonk
become: true
roles:
- role: docker-listmonk
vars:
domain: "{{domain_listmonk}}"
http_port: 8019
- name: setup discourse
hosts: discourse
become: true
roles:
- role: docker-discourse
vars:
domain: "{{domain_discourse}}"
http_port: 8020
- name: setup matrix
hosts: matrix
become: true
roles:
- role: docker-matrix-ansible
when: matrix_role == 'ansible'
vars:
domains:
- "{{domain_matrix_element}}"
- "{{domain_matrix_synapse}}"
element_domain: "{{domain_matrix_element}}"
synapse_domain: "{{domain_matrix_synapse}}"
http_port: 8021
- role: docker-matrix-compose
when: matrix_role == 'compose'
vars:
element_domain: "{{domain_matrix_element}}"
synapse_domain: "{{domain_matrix_synapse}}"
synapse_http_port: 8021
element_http_port: 8022
- name: setup open project instances
hosts: openproject
become: true
roles:
- role: docker-openproject
vars:
domain: "{{domain_openproject}}"
http_port: 8023
- name: setup gitlab hosts
hosts: gitlab
become: true
roles:
- role: docker-gitlab
vars:
domain: "{{domain_gitlab}}"
http_port: 8024
ssh_port: 2202
- name: setup akaunting hosts
hosts: akaunting
become: true
roles:
- role: docker-akaunting
vars:
domain: "{{domain_akaunting}}"
http_port: 8025
- name: setup moodle instance
hosts: moodle
become: true
roles:
- role: docker-moodle
vars:
domain: "{{domain_moodle}}"
http_port: 8026
- name: setup taiga instance
hosts: taiga
become: true
roles:
- role: docker-taiga
vars:
domain: "{{domain_taiga}}"
http_port: 8027
# Native Webserver Roles
- name: setup nginx-homepages
hosts: homepage
become: true
roles:
- role: nginx-homepage
vars:
domain: "{{top_domain}}"
- name: setup redirect hosts
hosts: redirect
become: true
roles:
- role: nginx-domain-redirect
vars:
domain_mappings: "{{redirect_domain_mappings}}"
- name: setup www redirect
hosts: www_redirect
become: true
roles:
- role: nginx-www-redirect
- import_playbook: playbook.destructor.yml