Maschinenraum/pad.uugrn.org: Unterschied zwischen den Versionen
Aus UUGRN
Sdk (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „;Admin Kontakt: sh[at]uugrn.org ;Hostname: pad.uugrn.org ;Aufgabe: Plattform für Echtzeit-Textbearbeitung ==== Beschreibung ==== Die treffenste Beschreibung…“) |
Sdk (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 27: | Zeile 27: | ||
[[Benutzer:Sdk|Sdk]] ([[Benutzer Diskussion:Sdk|Diskussion]]) | [[Benutzer:Sdk|Sdk]] ([[Benutzer Diskussion:Sdk|Diskussion]]) | ||
==== | ==== Install Log ==== | ||
OS: Debian Buster (10) | OS: Debian Buster (10) | ||
Zeile 39: | Zeile 39: | ||
Das Home directory des users ist /data/etherpad-lite. | Das Home directory des users ist /data/etherpad-lite. | ||
=== User anlegen === | ===== User anlegen ===== | ||
<pre> | <pre> | ||
Zeile 47: | Zeile 47: | ||
</pre> | </pre> | ||
=== Datenbank anlegen === | ===== Datenbank anlegen ===== | ||
<pre> | <pre> | ||
Zeile 60: | Zeile 60: | ||
</pre> | </pre> | ||
=== Etherpad installieren === | ===== Etherpad installieren ===== | ||
<pre> | <pre> | ||
Zeile 116: | Zeile 116: | ||
</pre> | </pre> | ||
=== SystemD Service installieren === | ===== SystemD Service installieren ===== | ||
<pre> | <pre> | ||
Zeile 138: | Zeile 138: | ||
</pre> | </pre> | ||
=== NGINX Reverse Proxy installieren === | ===== NGINX Reverse Proxy installieren ===== | ||
<pre> | <pre> | ||
Zeile 186: | Zeile 186: | ||
</pre> | </pre> | ||
=== Letsencrypt einrichten === | ===== Letsencrypt einrichten ===== | ||
<pre> | <pre> |
Aktuelle Version vom 13. April 2022, 06:58 Uhr
- Admin Kontakt
- sh[at]uugrn.org
- Hostname
- pad.uugrn.org
- Aufgabe
- Plattform für Echtzeit-Textbearbeitung
Beschreibung[Bearbeiten]
Die treffenste Beschreibung für ein Etherpad ist "Multiplayer Notepad". Es ermöglicht das Erstellen und Bearbeiten von Texten mit mehreren Personen gleichzeitig.
Admin Log[Bearbeiten]
- Betriebsystem: Debian
- Webserver: NGINX
- Produktiv seit: 20.06.2020
Update 2022-03-14[Bearbeiten]
Dank Node.js sind die ganzen Plugins kaputt gegangen. Daher läuft das Etherpad jetzt ohne code_formatting und image_upload. Wenn weitere Plugins kaputt gehen, werde ich mir auch keine Mühe mehr geben diese zu reparieren. Sdk (Diskussion)
Update 2020-05-26[Bearbeiten]
Die folgenden Etherpad Plugins wurden installiert:
- adminpads2 (zeigt Pads im Admin Frontend an)
- code_formatting (erlaubtes Text als Source Code zu formatieren - aka Monospace)
- image_upload (erlaubt es Fotos in ein pad einzubinden)
- webrtc (erlaubt Audio/Video Konferenz)
- draw (integration mit draw.uugrn.org)
Install Log[Bearbeiten]
OS: Debian Buster (10)
Installierte Software
- etherpad-lite
- nginx (als reverse proxy)
- posgresql
Etherpad Lite läuft unter dem User "etherpad". Das Home directory des users ist /data/etherpad-lite.
User anlegen[Bearbeiten]
$ mkdir /data $ adduser etherpad --system --group --home /data/etherpad-lite $ chown -R etherpad:etherpad /data
Datenbank anlegen[Bearbeiten]
$ apt-get install postgresql $ pg_ctlcluster 11 main start $ sudo -su postgresql $ psql CREATE USER etherpad; ALTER USER etherpad WITH PASSWORD '******'; CREATE DATABASE etherpad OWNER etherpad; ^D
Etherpad installieren[Bearbeiten]
$ cd /data $ git clone --branch master git://github.com/ether/etherpad-lite.git $ chown -R etherpad:etherpad etherpad-liste
Die Datei settings.json im ethernet-lite verzeichnis wurde folgendermaßen verändert:
$ diff settings.json.orig settings.json 171c171 < --- > /* 175a176,184 > */ > "dbType" : "postgres", > "dbSettings" : { > "user" : "etherpad", > "host" : "/var/run/postgresql", > "password": "*******", > "database": "etherpad", > "charset" : "utf8mb4" > }, 295c304 < "abiword": null, --- > "abiword": "/usr/bin/abiword", 303c312 < "soffice": null, --- > "soffice": "/usr/bin/libreoffice", 353c362 < "automaticReconnectionTimeout": 0, --- > "automaticReconnectionTimeout": 15, 407d415 < /* 410,412c418 < // 1) "password" can be replaced with "hash" if you install ep_hash_auth < // 2) please note that if password is null, the user will not be created < "password": "changeme1", --- > "password": "*******", 414,419d419 < }, < "user": { < // 1) "password" can be replaced with "hash" if you install ep_hash_auth < // 2) please note that if password is null, the user will not be created < "password": "changeme1", < "is_admin": false 422d421 < */
SystemD Service installieren[Bearbeiten]
$ cat /etc/systemd/system/etherpad-lite.service [Unit] Description=etherpad-lite (real-time collaborative document editing) After=syslog.target network.target [Service] Type=simple User=etherpad Group=etherpad Environment=NODE_ENV=production ExecStart=/bin/sh /data/etherpad-lite/bin/run.sh [Install] WantedBy=multi-user.target $ systemctl enable etherpad-lite $ service etherpad-lite start
NGINX Reverse Proxy installieren[Bearbeiten]
$ apt-get install nginx === $ rm /etc/nginx/sites-enabled/default $ cat /etc/nginx/sites-enabled/etherpad server { listen 443 ssl; server_name pad.uugrn.org; access_log /var/log/nginx/pad.uugrn.org.access.log; error_log /var/log/nginx/pad.uugrn.org.error.log; ssl_certificate /etc/letsencrypt/live/pad.uugrn.org/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/pad.uugrn.org/privkey.pem; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; location / { proxy_pass http://localhost:9001/; proxy_set_header Host $host; proxy_pass_header Server; proxy_buffering off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $host; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; } } # we're in the http context here map $http_upgrade $connection_upgrade { default upgrade; '' close; } server { listen 80; server_name pad.uugrn.org; rewrite ^(.*) https://$server_name$1 permanent; }
Letsencrypt einrichten[Bearbeiten]
$ apt-get install certbot python3-certbot-nginx $ certbot -d pad.uugrn.org <run through wizard> $ cat /etc/cron.weekly/certbot.sh #!/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin certbot renew service nginx reload