Version 24.1 von Jens Gruber am 2022/05/09 11:34

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
4 **1.** Stellen Sie sicher dass ihr logoDIDACT Server mindestens die Puppet-Version 1.4.0 besitzt. Dies ist für eine Aktivierung des Containers {{code language="bash"}}pgsql13{{/code}} notwendig.
5
6
7 **2.** Aktivieren Sie die Container {{code language="bash"}}nextcloud-g1{{/code}} ,  {{code language="bash"}}pgsql13{{/code}} und falls gewünscht den {{code language="bash"}}collabora-g1{{/code}} Container in der guest.conf im Puppeteer Container:
8
9 {{code language="bash"}}
10 root@ldhost:~ # lxc-ssh -n puppeteer
11 {{/code}}
12
13 {{code language="bash"}}
14 root@puppeteer:~ # vim /etc/logodidact/hosts/ldhost/guest.conf
15 {{/code}}
16
17 Ergänzen Sie die guest.conf um folgende Einträge:
18
19 {{code language="bash"}}
20 [Guest nextcloud-g1]
21 Ensure running
22
23 [Guest pgsql13]
24 Ensure running
25
26 # Falls gewünscht
27 [Guest collabora-g1]
28 Ensure running
29 {{/code}}
30
31 Übernehmen Sie die Änderungen ins git mit folgenden Befehlen:
32
33 {{code language="bash"}}
34 root@puppeteer:~ # cd /etc/logodidact
35 root@puppeteer:~ # git add .
36 root@puppeteer:~ # git commit -am "Aktivierung von Nextcloud und Collabora in der guest.conf."
37 {{/code}}
38
39
40 **3.** Kopieren Sie die nextcloud-g1.yaml und/oder collabora.yaml aus dem Template Verzeichnis:
41
42 Bei einer Nextcloud Nutzung mit Collabora kopieren Sie beide Dateien:
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 Sollten Sie nur die Nextcloud ohne Collabora nutzen wollen, führen Sie folgende Befehle aus:
54
55 {{code language="bash"}}
56 root@puppeteer:~ # cd /usr/share/doc/ld-puppet10/templates/cloud/without_collabora/custom.d/
57 {{/code}}
58
59 {{code language="bash"}}
60 root@puppeteer:/usr/share/doc/ld-puppet10/templates/cloud/without_collabora/custom.d # cp * /etc/logodidact/hiera/custom.d/
61 {{/code}}
62
63
64 **4. (Führen Sie diesen Schritt nur durch wenn Sie Collabora nutzen möchten) **Bearbeiten Sie die **collabora-g1.yaml** so dass Sie den Platzhalter **"ShortName"** gegen den Shortname Ihrer Schule austauschen.
65
66 {{code language="bash"}}
67 root@puppeteer:~ # vim /etc/logodidact/hiera/custom.d/collabora-g1.yaml
68 {{/code}}
69
70 {{code language="bash"}}
71 ld_collabora::config::allowed_hosts:
72 - nextcloud.ShortName.logoip.de
73
74 {{/code}}
75
76
77 **5.** Bearbeiten Sie die **nextcloud-g1.yaml** und fügen Sie die ersten beiden Abschnitte hinzu, um pgsql13 als Datenbank zu verwenden.
78
79 Passen Sie außerdem die Platzhalter **"ShortName"** gegen den Shortname Ihrer Schule an.
80
81 {{code language="bash"}}
82 root@puppeteer:~ # vim /etc/logodidact/hiera/custom.d/nextcloud-g1.yaml
83 {{/code}}
84
85 {{code language="bash"}}
86 ld_nextcloud::install::params:
87 admin-user: ncadmin
88 database-host: &dbhost pgsql13
89 database-name: &dbname nextcloud
90 database-user: &dbuser nextcloud
91 data-dir: /var/lib/nextcloud
92
93 ld_nextcloud::db:
94 server: *dbhost
95
96 ld_nextcloud::config::app:
97 richdocuments.wopi_url:
98 value: 'https://collabora.ShortName.logoip.de'
99
100 ld_nextcloud::config::system:
101 trusted_domains:
102 - nextcloud.ShortName.logoip.de
103 {{/code}}
104
105
106 **6.** Übernehmen Sie die Änderungen ins git:
107
108 {{code language="bash"}}
109 root@puppeteer:~ # cd /etc/logodidact
110 root@puppeteer:~ # git add .
111 root@puppeteer:~ # git commit -am "nextcloud-g1.yaml angepasst."
112 {{/code}}
113
114
115 **7. **Damit die Nextcloud von außen erreichbar wird, müssen Sie den Rev-Proxy Container aktiviert haben und folgende Einträge in der **revproxy.conf** setzen:
116
117 Wechseln Sie in den Puppeteer:
118
119 {{code language="bash"}}
120 root@ldhost:~ # lxc-ssh -n puppeteer
121 {{/code}}
122
123 Fügen Sie folgende Zeilen in die **revproxy.conf **ein und tauschen die Platzhalter** "SCHULKUERZEL" **durch den jeweiligen Shortname Ihrer Schule:
124
125 {{code language="bash"}}
126 root@puppeteer:~ # vim /etc/logodidact/hosts/rev-proxy/revproxy.conf
127 {{/code}}
128
129 {{code language="bash"}}
130 [ReverseProxy nextcloud.SCHULKUERZEL.logoip.de]
131 Url https://nextcloud
132
133 # Falls gewünscht
134 [ReverseProxy collabora.SCHULKUERZEL.logoip.de]
135 Url https://collabora
136 {{/code}}
137
138
139 Übernehmen Sie die Änderungen ins Git:
140
141 {{code language="bash"}}
142 root@puppeteer:~ # cd /etc/logodidact
143 root@puppeteer:~ # git add .
144 root@puppeteer:~ # git commit -am "revproxy.conf um Einträge für Nextcloud und Collabora ergänzt."
145 {{/code}}
146
147
148 **9.** Nun sollten Sie Zertifikate für die Nextcloud und evlt. Collabora Adressen beantragen. Hier gibt es je nach verwendetem Programm (acmetool & acme.sh) zwei Wege:
149
150 Sollte es bei der Nutzung des acmetools zu Problemen kommen, kann die Einrichtung von Split-DNS helfen.
151 Eine Anleitung zur Einrichtung finden Sie unter folgender Adresse: [[Einrichtung von Split-DNS>>https://kb.logodidact.com/xwiki/bin/view/Main/LD%20Server/Allgemein/Einrichtung%20Split-DNS/]]
152
153 ===== __
154 acmetool__ =====
155
156 Wechseln Sie in den puppeteer Container:
157
158 {{code language="bash"}}
159 root@ldhost:~ # lxc-ssh -n puppeteer
160 {{/code}}
161
162
163 Fordern Sie die Zertifikate für die Nextcloud und Collabora Adressen mit folgendem Befehl an (Ersetzen Sie **"SCHULKUERZEL"** mit dem jeweiligen Shortname):
164
165 {{code language="bash"}}
166 root@puppeteer:~ # acmetool want nextcloud.SCHULKUERZEL.logoip.de
167
168 # Falls gewünscht
169 root@puppeteer:~ # acmetool want collabora.SCHULKUERZEL.logoip.de
170 {{/code}}
171
172 ===== =====
173
174 ===== =====
175
176 ===== __
177 acme.sh__ =====
178
179 Wechseln Sie in den puppeteer Container:
180
181 {{code language="bash"}}
182 root@ldhost:~ # lxc-ssh -n puppeteer
183 {{/code}}
184
185
186 Wechseln Sie im puppeteer Container in die Umgebung für das Verwalten der Zertifikate:
187
188 {{code language="bash"}}
189 root@puppeteer:~ # sle
190 {{/code}}
191
192
193 Beantragen Sie ein neues Zertifikat mit folgendem Befehl (Ersetzen Sie **"SCHULKUERZEL"** mit dem jeweiligen Shortname):
194
195 {{code language="bash"}}
196 le-acme@puppeteer:~ $ issue nextcloud.SCHULKUERZEL.logoip.de
197
198 # Falls gewünscht
199 le-acme@puppeteer:~ $ issue collabora.SCHULKUERZEL.logoip.de
200 {{/code}}
201
202
203 **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.
204
205 Fügen Sie Benutzer der Rolle ld-sg-nextcloud hinzu. Nur Nutzer in dieser Gruppe können sich an der Nextcloud-Plattform anmelden, es kann bis zu 5-Minuten dauern bis die Aktivierung erfolgt.
206
207 [[image:1652079923794-166.png]]
208
209
210 **11.** Zu guter Letzt können Sie die Anmeldung wie folgt überprüfen:
211
212
213 Rufen Sie in ihrem Browser folgende Adresse auf (Ersetzen Sie **"SCHULKUERZEL"** durch den Shortname):
214
215 {{code language="bash"}}
216 https://nextcloud.SCHULKUERZEL.logoip.de/
217 {{/code}}
218
219
220 Melden Sie sich mit einem zur Gruppe hinzugefügtem Benutzer an:
221
222 [[image:1652080106839-833.png]]