Wiki-Quellcode von Installation Nextcloud mit pgsql13 als Datenbank-Container
Version 16.1 von Christian Germann am 2022/05/09 10:11
Zeige letzte Bearbeiter
author | version | line-number | content |
---|---|---|---|
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]] |