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