Inhaltsverzeichnis

Etherpad

frei nach https://github.com/ether/etherpad-lite/wiki/How-to-deploy-Etherpad-Lite-as-a-service und https://github.com/ether/etherpad-lite/wiki/How-to-use-Etherpad-Lite-with-PostgreSQL/876a249e89d4468a74441bfcb470d2b4ecba416a

Etherpad-Lite Service mit Postgres als Datenbank

apt install --no-install-recommends extrepo git postgresql-15
extrepo enable node_20.x
apt update

→ sollte node Repository anzeigen

apt install nodejs
useradd -r -d /opt/etherpad-lite -s /usr/sbin/nologin
cd /opt
git clone --branch master https://github.com/ether/etherpad-lite.git
cd etherpad-lite
chown etherpad:etherpad var/
./bin/installDeps.sh --omit=optional
su -c 'createuser -d etherpad' - postgres
su -c 'createdb -O etherpad etherpad' - postgres
settings.json
   "dbType" : "postgres",
   "dbSettings" : {
     "user"    : "etherpad",
     "host"    : "/var/run/postgresql",
     "password": "",
     "database": "etherpad",
     "charset" : "utf8mb4"
   },
 
  /* "dbType": "dirty",
   * "dbSettings": { 
   *   "filename": "var/dirty.db"
   * },
   */
update-alternatives --config editor
systemctl edit --force --full etherpad.service
/etc/systemd/system/etherpad.service
# /etc/systemd/system/etherpad.service
[Unit]
Description=Etherpad-lite, the collaborative editor.
After=syslog.target network.target
 
[Service]
Type=simple
User=etherpad
Group=etherpad
WorkingDirectory=/opt/etherpad
Environment=NODE_ENV=production
ExecStart=/usr/bin/node --experimental-worker /opt/etherpad/node_modules/ep_etherpad-lite/node/server.js
# use mysql plus a complete settings.json to avoid Service hold-off time over, scheduling restart.
Restart=always
 
ProtectSystem=full
PrivateDevices=yes

Etherpad hinter Apache-Reverse Proxy

Siehe:

https://github.com/ether/etherpad-lite/wiki/How-to-put-Etherpad-Lite-behind-a-reverse-Proxy#apache