Skip to content
Snippets Groups Projects

Pica Etherpad

Ce dossier contient une image d'Etherpad Lite maintenue par l'association.

Tous les fichiers présents ici suffisent à lancer correctement les deux conteneurs (application et base de données), si un Traefik tourne sur la machine cible. Sinon, il faut simplement adapter l'URL présente dans entrypoint.sh et exposer un port du conteneur, mais c'est hors-propos.

Environnement

Etherpad se configure au lancement du conteneur avec des variables d'environnement. Elles sont présentes à trois endroits :

  • Le fichier etherpad-app.secrets.example contient les variables possibles pour créer un administrateur Etherpad, qui pourra par exemple modifier la configuration depuis l'interface graphique. Copiez le fichier en enlevant .example et remplacez les valeurs. Ce fichier est importé depuis docker-compose.yml.
  • Le fichier etherpad-db.secrets.example contient les variables nécéssaires pour créer un utilisateur de la base de données. Le reste est similaire à l'autre fichier secret.
  • Le reste des variables d'environnement non-confidentielles est affecté directement dans le fichier docker-compose.yml, via la directive environment.

Les valeurs par défaut des variables (si elles ne sont pas affectées) se trouve dans entrypoint.sh.

Pour information, les variables que l'on peut affecter directement dans le docker-compose.yml sont :

  • ETHERPAD_MINIFY
  • ETHERPAD_THEME
  • ETHERPAD_TITLE
  • ETHERPAD_PORT

Elles ont toutes une valeur par défaut fonctionnelle ; à ne modifier qu'en cas particulier.

Configuration

Ajouter ou modifier un paramètre

Le fichier de configuration se trouve, dans le conteneur, à l'emplacement /opt/etherpad-lite/settings.json. Il est construit dynamiquement à chaque lancement du conteneur par le script entrypoint.sh.

Pour modifier la configuration, il faudra donc changer la valeur de la variable d'environnement associée et relancer le conteneur.

Pour ajouter un paramètre de configuration, il faudra :

  1. Créer une nouvelle variable d'environnement que l'on peut affecter dans le docker-compose.yml
  2. Récupérer cette valeur dans entrypoint.sh et lui substituer une valeur par défaut si elle n'existe pas
  3. Rajouter le paramètre de configuration lors de la construction du fichier settings.json
  4. Tester en local que tout fonctionne
  5. Reconstruire l'image et la pousser sur le Registry
  6. Modifier le docker-compose.yml d'exemple et de production avec la nouvelle variable d'environnement, puis l'ajouter à ce README.

Mise à jour de l'image

Pour mettre à jour la version d'Etherpad, il faut simplement reconstruire l'image en ayant préalablement modifié la variable ETHERPAD_VERSION_BUILD du Dockerfile.

Ensuite, on construit l'image, on la teste, on la tag et on la pousse sur le registry (procédure classique). Il faut ensuite mettre à jour le docker-compose d'exemple pour refléter la nouvelle version.

Ajout d'un plugin

Etherpad maintient une liste officielle des plugins.

Pour installer un plugin, on évitera de passer par l'interface administrateur et on préfèrera modifier le Dockerfile directement.

Il suffit pour ce faire d'ajouter le nom du package npm correspondant à l'endroit où ils sont tous installés (npm install...), en respectant l'ordre alphabétique pour la facilité de lecture.

Il suffit ensuite de mettre à jour l'image.