Logo de Etherpad

Etherpad

EtherPad est un éditeur de texte collaboratif en temps réel. Il permet par défaut à un maximum de seize personnes de partager un texte en cours d'élaboration. Les contributions de chacun apparaissent immédiatement sur l'écran de tous les participants et sont signalées par des couleurs différentes. Une fenêtre de messagerie instantanée est également disponible. À l'utilisation, le système ne requiert aucune installation, ni aucune inscription, il suffit d'avoir une connexion internet et un navigateur web. Sur cette page, vous constaterez que vous n'installerez non pas Etherpad mais Etherpad Lite, il s'agit du même logiciel mais réécrit en JavaScript qui lui permet d’être beaucoup mieux optimisé.

Source texte

Pré-requis

Installation

Il faut installer quelques paquets dans un premier temps, qu'utilisera Etherpad Lite lors de son installation dans un second temps.

Installer les paquets dépendants

Pour Ubuntu Trusty (14.04)

Pour Ubuntu Precise (12.04)

Le paquet Nodejs disponible dans les dépôts officiels n'est pas compatible avec Etherpad Lite, il faut installer une version plus récente. Pour y parvenir, suivez cette procédure. Les paquets Nodejs et Npm fusionnent en un seul.

Puis, Installez les paquets nodejs git curl

Installer Etherpad Lite

Ouvrez le terminal, et allez dans le répertoire /opt

cd /opt

Chargez y un clone du logiciel Etherpad Lite à l'aide de Git :

sudo git clone 'git://github.com/ether/etherpad-lite.git'

Ceci fait, allez dans le répertoire /opt/etherpad-lite/bin :

cd etherpad-lite/bin

Puis lancez l'installation d'Etherpad Lite à l'aide d'un script adapté :

sudo ./installDeps.sh
Pour pouvoir exécuter ce script, il faut que npm soit installé. Vous pouvez le récupérer via cette page

.

Mise en service

Démarrage

  • Il est possible de lancer Eterpad Lite en exécutant simplement ce script shell :
sudo /opt/etherpad-lite/bin/run.sh --root
  • Où en tant que service si vous comptez l'utiliser régulièrement :

Créez le fichier /etc/init.d/etherpad-lite (avec les droits d'administrations), et insérez y ceci :

#!/bin/sh
### BEGIN INIT INFO
# Provides: etherpad-lite
# Required-Start: $local_fs $remote_fs $network $syslog
# Required-Stop: $local_fs $remote_fs $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: starts etherpad lite
# Description: starts etherpad lite using start-stop-daemon
### END INIT INFO
PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/node/bin"
LOGFILE="/var/log/etherpad-lite/etherpad-lite.log"
EPLITE_DIR="/opt/etherpad-lite"
EPLITE_BIN="bin/run.sh"
USER="root"
GROUP="root"
DESC="Etherpad Lite"
NAME="etherpad-lite"
set -e
. /lib/lsb/init-functions
start() {
echo "Starting $DESC... "
start-stop-daemon --start --chuid "$USER:$GROUP" --background --make-pidfile --pidfile /var/run/$NAME.pid --exec "$EPLITE_DIR/$EPLITE_BIN" -- $LOGFILE || true
echo "done"
}
# Nous avons besoin de cette fonction pour assurer la totalité du processus lorsqu'il sera tué
killtree() {
local _pid=$1
local _sig=${2-TERM}
for _child in $(ps -o pid --no-headers --ppid ${_pid}); do
killtree ${_child} ${_sig}
done
kill -${_sig} ${_pid}
}
stop() {
echo "Stopping $DESC... "
while test -d /proc/$(cat /var/run/$NAME.pid); do
killtree $(cat /var/run/$NAME.pid) 15
sleep 0.5
done
rm /var/run/$NAME.pid
echo "done"
}
status() {
status_of_proc -p /var/run/$NAME.pid "" "etherpad-lite" && exit 0 || exit $?
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status
;;
*)
echo "Usage: $NAME {start|stop|restart|status}" >&2
exit 1
;;
esac
exit 0

Donnez les droits d’exécution au fichier précédemment créé :

sudo chmod +x /etc/init.d/etherpad-lite

Démarrez Etherpad Lite en tant que service :

sudo /etc/init.d/etherpad-lite start

Démarrage automatique

Il est possible d'automatiser le démarrage d'Etherpad Lite lors de l'ouverture de session ou du démarrage de l'ordinateur. Il faudra au préalable créer le fichier /etc/init.d/etherpad-lite et lui donné les droits d’exécution comme expliqué ci dessus.

  • Sinon, une solution universelle et assez rapide qui fonctionne avec Ubuntu et ses dérivés en ligne de commandes, commencez par installer un logiciel pour configurer system V :
sudo apt-get install sysv-rc-conf

Démarrez le logiciel :

sudo sysv-rc-conf

Cochez y les cases de la ligne etherpad-lite de 2 à 5 avec la touche espace, puis quittez avec la touche q. Je vous conseil de ne toucher à rien d'autre si vous n’êtes pas familier avec la gestion des services au démarrage.

Base de données

Par défaut, Etherpad-lite est déjà équipé de sa propre base de données, Dirty. Elle est fonctionnelle mais est plutôt destiné à tester, pour la production il est préférable de migrer sur une base de données plus performante (Mysql, Postgresql, …) .

Les configurations des bases de données ont été testé uniquement avec Ubuntu Trusty 14.04

Fichier de configuration

Vous devez dans un premier temps modifier le fichier de configuration d'Etherpad Lite. Ouvrez le fichier /opt/etherpad-lite/settings.json.

// An Example of MySQL Configuration
   "dbType" : "mysql",
   "dbSettings" : {
                    "user"    : "ether", 
                    "host"    : "localhost", 
                    "password": "motdepasse", 
                    "database": "etherpad-lite"
                  },
  • Bien entendu remplacez "mysql" par "postgres" si vous comptez utiliser PostgreSQL et motdepasse par un mot de passe.
  • Concernant (uniquement) Mysql, vous devrez commenter bind-address, ou remplacer "localhost" par "127.0.0.1".
  • Vous pouvez aussi personnaliser les autres informations, mais pensez à les appliquer également sur les commandes ci dessous.

Vous constaterez également la présence de symboles tels que /* et */ , ils servent à commenter (ignorer) des partie du fichier de configuration. Pensez bien à dé-commenter la partie concernant Mysql, et commenter la partie Dirty.

Ce qui donne :

  /*
 
  //The Type of the database. You can choose between dirty, postgres, sqlite and mysql
  //You shouldn't use "dirty" for for anything else than testing or development
  // "dbType" : "dirty",
  //the database specific settings
  //"dbSettings" : {
                   "filename" : "var/dirty.db"
                 },
 
  */
 
  // An Example of MySQL Configuration
   "dbType" : "mysql",
   "dbSettings" : {
                    "user"    : "ether", 
                    "host"    : "localhost", 
                    "password": "motdepasse", 
                    "database": "etherpad-lite"
                  },

Mysql

Suite à son installation et sa configuration (voir cette page Mysql), mettons les mains dans la base de données Mysql, pour commencer nous allons nous y connecter avec le compte principal, en principe root :

sudo mysql -u root -p

Puis nous allons créer la base de données etherpad-lite :

create database `etherpad-lite`;

Créer l'utilisateur ether et remplacez motdepasse par celui que vous voulez :

grant all privileges on `etherpad-lite`.* to 'ether'@'localhost' identified by 'motdepasse';

Quittez Mysql :

exit

Redémarrez Etherpad Lite pour qu'il prenne en compte les modifications :

sudo /etc/init.d/etherpad-lite restart

Puis coupez le :

sudo /etc/init.d/etherpad-lite stop

Reconnectez vous sur Mysql avec votre compte principal, puis modifiez les caractères de la base de données etherpad-lite, et la table store qui a été créé automatiquement :

ALTER DATABASE `etherpad-lite` CHARACTER SET utf8 COLLATE utf8_bin;
USE `etherpad-lite`;
ALTER TABLE `store` CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;

PostgreSQL

Vous devrez installer en plus de PostgreSQL une librairie lui permettant d’être compatible avec Javascript : Installez le paquet node-pg

Connectez vous sur l'utilisateur par défaut :

sudo -i -u postgres

Créez l'utilisateur ether, et rentrer le mot de passe deux fois :

createuser -P ether

Créez lui la base de données etherpad-lite :

createdb -O ether etherpad-lite

Et quittez postgres :

exit

Pour terminer

Si vous avez reproduit convenablement l'une de ces méthodes, Etherpad Lite devrait être fonctionnel avec la nouvelle base de données en effectuant cette commande :

sudo /etc/init.d/etherpad-lite restart

Si ce n'est pas le cas, consultez la page Mysql ou PostgreSQL et n’hésitez pas à demander de l'aide sur le forum, il est vrai que les bases de données sont difficiles à maîtriser pour un néophyte.

Utilisation

Après avoir exécuté Etherpad Lite, lancez votre navigateur internet, puis …

En local

Si vous utilisez votre navigateur sur la machine hébergeant Etherpad Lite, allez tout simplement sur http://localhost:9001

Depuis Internet

Si vous comptez vouloir y accéder depuis un autre ordinateur via Internet, alors il faudra veuillez que votre pare-feu et/ou votre routeur ne bloquent pas les connexion sur le port 9001. L'adresse ressemblera à ceci :

http://adresse_ip:9001

Pour un serveur (avancé)

Dans ce cas, il est préférable de consulter directement la documentation du projet Etherpad proposant des solutions de proxy inverse et d'hébergement virtuel [en].

Désinstallation

Pour supprimer cette application, supprimez les paquets dépendants installés. Effacez le dossier etherpad-lite créé dans le dossier /opt. Pensez aussi à annuler le démarrage automatique d'Etherpad Lite. Si vous désirez aussi effacer tous les contenus créés, vous devrez supprimer les tables dédiées sur votre base de données.

Voir aussi


Contributeurs principaux : mario_26, Axelos.

  • etherpad.txt
  • Dernière modification: Le 28/04/2018, 11:13
  • (modification externe)