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.