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
* 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 :
*`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.
## Configuration
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
## 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.
@@ -23,9 +23,19 @@ if [ -z "$ETHERPAD_DB_PASSWORD" ]; then
exit 1
fi
: ${ETHERPAD_TITLE:=Etherpad}
# Title of the instance
: ${ETHERPAD_TITLE:=Picapad}
: ${ETHERPAD_PORT:=8080}
# Skin of the instance ; for now only no-skin and colibris exist
: ${ETHERPAD_THEME:=no-skin}
# If true, minify all CSS and JS but prevent debugging client-side
: ${ETHERPAD_MINIFY:=false}
# Default text when creating a new pad
: ${ETHERPAD_DEFAULT_TEXT:="Bienvenue sur Picapad, l'éditeur de texte collaboratif hébergé par Picasoft.\n\n.Le texte que vous saisissez est automatiquement synchronisé avec toutes les personnes naviguant sur ce pad.\n\nPrenez des notes ou rédigez des documents librement !"}