Ethercalc

ec

Auf BeeHive [1, 2] habe ich schon hierzu geschrieben: Meine Schule hat nun neben einem Etherpad-Lite-Server auch einen Ethercalc-Server zur gemeinsamen Arbeit an Tabellen im Netz.

Die Installation verlief tatsächlich so einfach wie auf den Seiten der Programmierer angegeben.

Was mich zuerst zögern ließ, war die Frage, wo ich den auf unserem Testserver hinlegen sollte und wie sich das Programm im Dauerbetrieb dann verhält. Ich entschied mich nun für die Installation von Ethercalc in den Benutzeraccount des schon vorhandenen Etherpad-Lite-Servers. Also nochmal zum Nachturnen hier mein Vorgehen.

Zuerst in den Benutzeraccount von etherpad wechseln:

sudo su – etherpad -s /bin/bash

Dann in

/opt/etherpad/local

ein Unterverzeichnis einrichten

mkdir ethercalc

cd ethercalc

Das Programm installieren

npm install ethercalc

und nachsehen, ob es läuft:

./node_modules/ethercalc/bin/ethercalc

Im Browser unter der eigenen Domain auf Port 8000 sollte dann der Ethercalc-Server wie hier  auftauchen: https://ethercalc.org/

Mit STRG C schießt man diesen Prozess wieder ab und meldet sich mit

exit

aus dem Benutzeraccount von Etherpad ab.

Dann – wieder als root auf dem System unterwegs – legt man sich ein Startskript für Ethercalc an. Das kann so einfach wie das hier sein:

cd /etc/initd

vi ethercalc.conf

und in diese Datei sowas wie das hier pasten:

description „ethercalc“

start on started networking

stop on runlevel [!2345]

env ECHOME=/opt/etherpad/local/ethercalc

env ECLOGS=/var/log/ethercalc

env ECUSER=etherpad

# Programpath /opt/etherpad/local/ethercalc/node_modules/ethercalc/bin/ethercalc

pre-start script

chown -R $ECUSER $ECLOGS ||true

chmod -R 755 $ECLOGS ||true

end script

script

cd $ECHOME/

exec su -s /bin/sh -c ‚exec „$0“ „$@“‚ $ECUSER — node_modules/ethercalc/bin/ethercalc \

>> $ECLOGS/access.log \

2>> $ECLOGS/error.log

end script

Die Verzeichnisse für die Logs anlegen und dem Benutzer etherpad übergeben:

mkdir /var/log/ethercalc

chmod -R 755 /var/log/ethercalc

chown -R etherpad /var/log/ethercalc

Die Logs müssen auch weg-rotated werden. Also

vi /etc/logrotate.conf

und hier am Ende hinzufügen:

# Ethercalc – weekly rotation and compression

/var/log/ethercalc/*.log {

weekly

missingok

rotate 8

compress

notifempty

}

Ein

service ethercalc start

sollte den Dienst nun hochbringen.

Mal sehen, wie sich das Ding verhalten wird. Die Konfiguration hier ist noch arg mit der Axt in den Server geklopft, aber es läuft erst einmal … Redis kommt dann als nächstes mit auf die Maschine, damit Ethercalc einen echten Datenbankserver zum Speichern der Tabellen hat.