Version 16.1 von Christian Germann am 2022/05/09 10:11

Zeige letzte Bearbeiter
1 Mit den nachfolgenden Schritten können Sie eine neue Nextcloud Instanz auf einem Server mit dem Datenbank-Container pgsql13 installieren.
2
3 **1.** Stellen Sie sicher dass ihr logoDIDACT Server mindestens die Puppet-Version 1.4.0 besitzt. Dies ist für eine Verwendung des Containers {{code language="bash"}}pgsql13{{/code}} notwendig. **__Ebenfalls ist der Container {{code language="bash"}}rev-proxy{{/code}} für eine Installation notwendig.__**
4
5
6 **2.** Aktivieren Sie die Container {{code language="bash"}}nextcloud-g1{{/code}} ,  {{code language="bash"}}pgsql13{{/code}} und wenn benötigt den {{code language="bash"}}collabora-g1{{/code}} Container in der guest.conf im Puppeteer Container:
7
8 {{code language="bash"}}
9 root@ldhost:~ # lxc-ssh -n puppeteer
10 {{/code}}
11
12 {{code language="bash"}}
13 root@puppeteer:~ # vim /etc/logodidact/hosts/ldhost/guest.conf
14 {{/code}}
15
16 Ergänzen Sie die guest.conf um folgende Einträge:
17
18 {{code language="bash"}}
19 [Guest nextcloud-g1]
20 Ensure running
21
22 [Guest pgsql13]
23 Ensure running
24
25 [Guest rev-proxy]
26 Ensure running
27
28 # Wenn benötigt
29 [Guest collabora-g1]
30 Ensure running
31 {{/code}}
32
33 Übernehmen Sie die Änderungen ins git mit folgenden Befehlen:
34
35 {{code language="bash"}}
36 root@puppeteer:~ # cd /etc/logodidact
37 root@puppeteer:~ # git add .
38 root@puppeteer:~ # git commit -am "Aktivierung von Nextcloud und Collabora in der guest.conf."
39 {{/code}}
40
41
42 **3.** Kopieren Sie die nextcloud-g1.yaml und collabora.yaml aus dem Template Verzeichnis:
43
44 {{code language="bash"}}
45 root@puppeteer:~ # cd /usr/share/doc/ld-puppet10/templates/cloud/with_collabora/custom.d/
46 {{/code}}
47
48 {{code language="bash"}}
49 root@puppeteer:/usr/share/doc/ld-puppet10/templates/cloud/with_collabora/custom.d # cp * /etc/logodidact/hiera/custom.d/
50 {{/code}}
51
52
53 **4. **Bearbeiten Sie die **collabora-g1.yaml** so dass Sie den Platzhalter **"ShortName"** gegen den Shortname der Schule austauschen.
54
55 {{code language="bash"}}
56 root@puppeteer:~ # vim /etc/logodidact/hiera/custom.d/collabora-g1.yaml
57 {{/code}}
58
59 {{code language="bash"}}
60 # Vorher:
61 ---
62 ld_collabora::config::allowed_hosts:
63 - nextcloud.ShortName.logoip.de
64
65 # Nacher:
66 ---
67 ld_collabora::config::allowed_hosts:
68 - nextcloud.musterstadt-gym.logoip.de
69 {{/code}}
70
71
72 **5.** Bearbeiten Sie die **nextcloud-g1.yaml** so dass Sie die Platzhalter **"ShortName"** gegen den Shortname der Schule austauschen.
73
74 {{code language="bash"}}
75 root@puppeteer:~ # vim /etc/logodidact/hiera/custom.d/nextcloud-g1.yaml
76 {{/code}}
77
78 {{code language="bash"}}
79 # Vorher
80 ---
81 ld_nextcloud::config::app:
82 richdocuments.wopi_url:
83 value: 'https://collabora.ShortName.logoip.de'
84
85 ld_nextcloud::config::system:
86 trusted_domains:
87 - nextcloud.ShortName.logoip.de
88
89 # Nacher:
90 ---
91 ld_nextcloud::config::app:
92 richdocuments.wopi_url:
93 value: 'https://collabora.musterstadt-gym.logoip.de'
94
95 ld_nextcloud::config::system:
96 trusted_domains:
97 - nextcloud.musterstadt-gym.logoip.de
98 {{/code}}
99
100
101 **6.** Ergänzen Sie nun die **nextcloud-g1.yaml** um folgende Werte:
102
103 {{code language="bash"}}
104 root@puppeteer:~ # vim /etc/logodidact/hiera/custom.d/nextcloud-g1.yaml
105 {{/code}}
106
107 {{code language="bash"}}
108 ld_nextcloud::install::params:
109 admin-user: ncadmin
110 database-host: &dbhost pgsql13
111 database-name: &dbname nextcloud
112 database-user: &dbuser nextcloud
113 data-dir: /var/lib/nextcloud
114
115 ld_nextcloud::db:
116 server: *dbhost
117 {{/code}}
118
119
120 **7.** Übernehmen Sie die Änderungen ins git:
121
122 {{code language="bash"}}
123 root@puppeteer:~ # cd /etc/logodidact
124 root@puppeteer:~ # git add .
125 root@puppeteer:~ # git commit -am "nextcloud-g1.yaml angepasst."
126 {{/code}}
127
128
129 **8. **Damit die Nextcloud von außen erreichbar wird, müssen Sie folgende Einträge in der **revproxy.conf** setzen:
130
131 Wechseln Sie in den Puppeteer:
132
133 {{code language="bash"}}
134 root@ldhost:~ # lxc-ssh -n puppeteer
135 {{/code}}
136
137
138 Wechsel Sie in das Verzeichnis zur Konfiguration:
139
140 {{code language="bash"}}
141 root@puppeteer:~ # cd /etc/logodidact/hosts/rev-proxy
142 {{/code}}
143
144
145 Fügen Sie folgende Zeilen in die **revproxy.conf **ein und tauschen die Platzhalter** "SCHULKUERZEL" **durch den jeweiligen Shortname der Schule:
146
147 {{code language="bash"}}
148 root@puppeteer:/etc/logodidact/hosts/rev-proxy # vim revproxy.conf
149 {{/code}}
150
151 {{code language="bash"}}
152 [ReverseProxy nextcloud.SCHULKUERZEL.logoip.de]
153 Url https://nextcloud
154
155 [ReverseProxy collabora.SCHULKUERZEL.logoip.de]
156 Url https://collabora
157 {{/code}}
158
159
160 Übernehmen Sie die Änderungen ins Git:
161
162 {{code language="bash"}}
163 root@puppeteer:~ # cd /etc/logodidact
164 root@puppeteer:~ # git add .
165 root@puppeteer:~ # git commit -am "revproxy.conf um Einträge für Nextcloud und Collabora ergänzt."
166 {{/code}}
167
168
169 **9.** Nun müssen Sie Zertifikate für die Nextcloud und Collabora Adressen beantragen. Hier gibt es je nach verwendetem Programm (acmetool & acme.sh) 2 Wege:
170
171 ===== =====
172
173 ===== __
174 acmetool__ =====
175
176 Wechseln Sie in den puppeteer Container:
177
178 {{code language="bash"}}
179 root@ldhost:~ # lxc-ssh -n puppeteer
180 {{/code}}
181
182
183 Fordern Sie die Zertifikate für die Nextcloud und Collabora Adressen mit folgendem Befehl an (Ersetzen Sie **"SCHULKUERZEL"** mit dem jeweiligen Shortname):
184
185 {{code language="bash"}}
186 root@puppeteer:~ # acmetool want nextcloud.SCHULKUERZEL.logoip.de
187 root@puppeteer:~ # acmetool want collabora.SCHULKUERZEL.logoip.de
188 {{/code}}
189
190 ===== =====
191
192 ===== =====
193
194 ===== __
195 acme.sh__ =====
196
197 Wechseln Sie in den puppeteer Container:
198
199 {{code language="bash"}}
200 root@ldhost:~ # lxc-ssh -n puppeteer
201 {{/code}}
202
203
204 Wechseln Sie im puppeteer Container in die Umgebung für das Verwalten der Zertifikate:
205
206 {{code language="bash"}}
207 root@puppeteer:~ # sle
208 {{/code}}
209
210
211 Beantragen Sie ein neues Zertifikat mit folgendem Befehl (Ersetzen Sie **"SCHULKUERZEL"** mit dem jeweiligen Shortname):
212
213 {{code language="bash"}}
214 le-acme@puppeteer:~ $ issue nextcloud.SCHULKUERZEL.logoip.de
215 le-acme@puppeteer:~ $ issue collabora.SCHULKUERZEL.logoip.de
216 {{/code}}
217
218
219 **10.** Um Nutzern Zugriff auf die Nextcloud zu ermöglichen muss in der logoDIDACT-Console eine Rolle mit dem Namen **"ld-sg-nextcloud" **erstellen werden. Fügen Sie Benutzer der Rolle ld-sg-nextcloud hinzu. Ohne diesen Schritt bekommt kein Nutzer Zugriff auf die Plattform.
220
221 [[image:1652079923794-166.png]]
222
223
224 **11.** Zu guter Letzt können Sie die Anmeldung wie folgt überprüfen:
225
226
227 Rufen Sie in ihrem Browser folgende Adresse auf (Ersetzen Sie **"SCHULKUERZEL"** durch den Shortname):
228
229 {{code language="bash"}}
230 https://nextcloud.SCHULKUERZEL.logoip.de/
231 {{/code}}
232
233
234 Melden Sie sich mit einem zur Gruppe hinzugefügtem Benutzer an:
235
236 [[image:1652080106839-833.png]]