Skip to content
Snippets Groups Projects
Verified Commit 2bf57353 authored by Quentin Duchemin's avatar Quentin Duchemin
Browse files

Remove print plugin as it conflicts with new theme

parent d47623ab
No related branches found
No related tags found
1 merge request!29Améliorations diverses d'Etherpad
......@@ -46,7 +46,6 @@ RUN curl -SL https://github.com/ether/etherpad-lite/archive/${ETHERPAD_VERSION}.
ep_markdown \
ep_pads_stats \
ep_page_view \
ep_print \
ep_set_title_on_pad \
ep_subscript_and_superscript \
ep_tables2 \
......
......@@ -4,41 +4,65 @@ 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.
<!-- MarkdownTOC autolink="true" -->
- [Environnement](#environnement)
- [Configuration](#configuration)
- [Ajouter ou modifier un paramètre](#ajouter-ou-modifier-un-param%C3%A8tre)
- [Mise à jour de l'image](#mise-%C3%A0-jour-de-limage)
- [Ajout d'un plugin](#ajout-dun-plugin)
<!-- /MarkdownTOC -->
## 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 info, les variables que l'on peut affecter directement dans le `docker-compose.yml` sont :
Pour information, les variables que l'on peut affecter directement dans le `docker-compose.yml` sont :
* `ETHERPAD_MINIFY`
* `ETHERPAD_DEFAULT_TEXT`
* `ETHERPAD_THEME`
* `ETHERPAD_TITLE`
* `ETHERPAD_PORT`
Elles sont toute une valeur par défaut fonctionnelle ; à ne modifier qu'en cas particulier.
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 :
* Créer une nouvelle variable d'environnement que l'on peut affecter dans le `docker-compose.yml`
* Récupérer cette valeur dans `entrypoint.sh` et lui substituer une valeur par défaut si elle n'existe pas
* Rajouter le paramètre de configuration lors de la construction du fichier `settings.json`
* Tester en local que tout fonctionne
* Reconstruire l'image et la pousser sur le Registry
* Modifier le `docker-compose.yml` d'exemple **et** de production avec la nouvelle variable d'environnement
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.
\ No newline at end of file
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](https://static.etherpad.org/plugins.html).
Pour installer un plugin, on évitera de passer par l'interface administrateur et on préfèrera modifier le [Dockerfile](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.
\ No newline at end of file
......@@ -32,9 +32,9 @@ services:
- /DATA/docker/etherpad/etherpad-db/data:/var/lib/mysql
env_file: ./secrets/etherpad-db.secrets
healthcheck:
test: "/usr/bin/mysql --user=root --password=$${MYSQL_ROOT_PASSWORD} --execute \"SHOW DATABASES;\""
interval: 4s
timeout: 20s
retries: 10
test: "/usr/bin/mysql --user=root --password=$${MYSQL_ROOT_PASSWORD} --execute \"SHOW DATABASES;\""
interval: 4s
timeout: 20s
retries: 10
restart: always
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment