Version 19.1 von Jens Gruber am 2022/05/09 11:08

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 collabora.yaml aus dem Template Verzeichnis:
41
42 # Beide Varianten - mit und ohne Collabora
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 Ihrer 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 ld_collabora::config::allowed_hosts:
61 - nextcloud.ShortName.logoip.de
62
63 {{/code}}
64
65
66 **5.** Bearbeiten Sie die **nextcloud-g1.yaml** und fügen Sie die ersten beiden Abschnitte hinzu, um pgsql13 als Datenbank zu verwenden.
67
68 Passen Sie ausserdem die Platzhalter **"ShortName"** gegen den Shortname Ihrer Schule an.
69
70 {{code language="bash"}}
71 root@puppeteer:~ # vim /etc/logodidact/hiera/custom.d/nextcloud-g1.yaml
72 {{/code}}
73
74 {{code language="bash"}}
75 ld_nextcloud::install::params:
76 admin-user: ncadmin
77 database-host: &dbhost pgsql13
78 database-name: &dbname nextcloud
79 database-user: &dbuser nextcloud
80 data-dir: /var/lib/nextcloud
81
82 ld_nextcloud::db:
83 server: *dbhost
84
85 ld_nextcloud::config::app:
86 richdocuments.wopi_url:
87 value: 'https://collabora.ShortName.logoip.de'
88
89 ld_nextcloud::config::system:
90 trusted_domains:
91 - nextcloud.ShortName.logoip.de
92 {{/code}}
93
94
95 **6.** Übernehmen Sie die Änderungen ins git:
96
97 {{code language="bash"}}
98 root@puppeteer:~ # cd /etc/logodidact
99 root@puppeteer:~ # git add .
100 root@puppeteer:~ # git commit -am "nextcloud-g1.yaml angepasst."
101 {{/code}}
102
103
104 **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:
105
106 Wechseln Sie in den Puppeteer:
107
108 {{code language="bash"}}
109 root@ldhost:~ # lxc-ssh -n puppeteer
110 {{/code}}
111
112 Fügen Sie folgende Zeilen in die **revproxy.conf **ein und tauschen die Platzhalter** "SCHULKUERZEL" **durch den jeweiligen Shortname Ihrer Schule:
113
114 {{code language="bash"}}
115 root@puppeteer:~ # vim /etc/logodidact/hosts/rev-proxy/revproxy.conf
116 {{/code}}
117
118
119 {{code language="bash"}}
120 [ReverseProxy nextcloud.SCHULKUERZEL.logoip.de]
121 Url https://nextcloud
122
123 # Falls gewünscht
124 [ReverseProxy collabora.SCHULKUERZEL.logoip.de]
125 Url https://collabora
126 {{/code}}
127
128
129 Übernehmen Sie die Änderungen ins Git:
130
131 {{code language="bash"}}
132 root@puppeteer:~ # cd /etc/logodidact
133 root@puppeteer:~ # git add .
134 root@puppeteer:~ # git commit -am "revproxy.conf um Einträge für Nextcloud und Collabora ergänzt."
135 {{/code}}
136
137
138 **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:
139
140 ===== =====
141
142 (% class="wikigeneratedid" %)
143 (Beachten Sie dass für das Anfordern der Zertifikate ein eingerichtetes [[Split-DNS>>https://kb.logodidact.com/xwiki/bin/view/Main/LD%20Server/Allgemein/Einrichtung%20Split-DNS/]] notwendig ist!)
144
145 ===== __
146 acmetool__ =====
147
148 Wechseln Sie in den puppeteer Container:
149
150 {{code language="bash"}}
151 root@ldhost:~ # lxc-ssh -n puppeteer
152 {{/code}}
153
154
155 Fordern Sie die Zertifikate für die Nextcloud und Collabora Adressen mit folgendem Befehl an (Ersetzen Sie **"SCHULKUERZEL"** mit dem jeweiligen Shortname):
156
157 {{code language="bash"}}
158 root@puppeteer:~ # acmetool want nextcloud.SCHULKUERZEL.logoip.de
159
160 # Falls gewünscht
161 root@puppeteer:~ # acmetool want collabora.SCHULKUERZEL.logoip.de
162 {{/code}}
163
164 ===== =====
165
166 ===== =====
167
168 ===== __
169 acme.sh__ =====
170
171 Wechseln Sie in den puppeteer Container:
172
173 {{code language="bash"}}
174 root@ldhost:~ # lxc-ssh -n puppeteer
175 {{/code}}
176
177
178 Wechseln Sie im puppeteer Container in die Umgebung für das Verwalten der Zertifikate:
179
180 {{code language="bash"}}
181 root@puppeteer:~ # sle
182 {{/code}}
183
184
185 Beantragen Sie ein neues Zertifikat mit folgendem Befehl (Ersetzen Sie **"SCHULKUERZEL"** mit dem jeweiligen Shortname):
186
187 {{code language="bash"}}
188 le-acme@puppeteer:~ $ issue nextcloud.SCHULKUERZEL.logoip.de
189
190 # Falls gewünscht
191 le-acme@puppeteer:~ $ issue collabora.SCHULKUERZEL.logoip.de
192 {{/code}}
193
194
195 # Link zu Splitdns
196
197
198 **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.
199
200 Fügen Sie Benutzer der Rolle ld-sg-nextcloud hinzu. Nur Nutzer in dieser Gruppe können sich an der Nextcloud-Platform anmelden, es kann bis zu 5-Minuten dauern bis die Aktivierung erfolgt.
201
202 [[image:1652079923794-166.png]]
203
204
205 **11.** Zu guter Letzt können Sie die Anmeldung wie folgt überprüfen:
206
207
208 Rufen Sie in ihrem Browser folgende Adresse auf (Ersetzen Sie **"SCHULKUERZEL"** durch den Shortname):
209
210 {{code language="bash"}}
211 https://nextcloud.SCHULKUERZEL.logoip.de/
212 {{/code}}
213
214
215 Melden Sie sich mit einem zur Gruppe hinzugefügtem Benutzer an:
216
217 [[image:1652080106839-833.png]]