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.
Configuration
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 privées, par exemple le mot de passe de l'administrateur Etherpad, les identifiants de base de données... Copiez le fichier en enlevant.example
et remplacez les valeurs. Ce fichier est importé depuisdocker-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. Les identifiants doivent correspondre à ceux du fichieretherpad-app.secrets
. - Le reste des variables d'environnement non-confidentielles est affecté directement dans le fichier
docker-compose.yml
, via la directiveenvironment
.
Toutes les paramètres sont configurables via l'environnement. On pourra regarder le fichier settings.json pour une référence. Ce fichier contient uniquement les valeurs par défaut. La configuration doit avoir lieu dans le docker-compose.yml. Pour des configurations vraiment très durables et/ou très spécifiques, on pourra modifier settings.json et reconstruire l'image.
Mise à jour de l'image
Pour mettre à jour la version d'Etherpad, il faut simplement modifir la variable ETHERPAD_VERSION_BUILD
du Dockerfile et le nom dans l'image dans Docker Compose.
L'image est construite automatiquement grâce à la CI.
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 dans le Dockerfile
, sur la ligne ARG ETHERPAD_PLUGINS
, en respectant l'ordre alphabétique pour la facilité de lecture.
Page d'accueil
La page d'accueil est présente dans le dossier landing-page
et est construite (i.e. compilée, minifiée...) automatiquement lors du build de l'image.