Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
technique:docker:picasoft:update [2020/09/30 20:26] – qduchemi | technique:docker:picasoft:update [2022/05/24 20:15] (Version actuelle) – ppom | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
{{indexmenu_n> | {{indexmenu_n> | ||
# Mettre à jour un service ou sa configuration | # Mettre à jour un service ou sa configuration | ||
+ | |||
+ | < | ||
+ | Prérequis : les articles de [[technique: | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | |||
+ | Tous les fichiers permettant de paramétrer les conteneurs Docker d'un service sont versionnés sur son dépôt, [ici(https:// | ||
+ | |||
+ | On peut vouloir mettre à jour : | ||
+ | |||
+ | * Le service (*e.g.* passer d'une version X à une version Y), | ||
+ | * La configuration du service (*e.g.* changer un paramètre dans un fichier `config.json`), | ||
+ | * La configuration des volumes (*e.g.* changer le point de montage du Docker Compose), | ||
+ | * etc. | ||
+ | |||
+ | < | ||
+ | |||
+ | Vous pouvez effectuer les modifications sur votre machine ou sur une machine de Picasoft, du moment qu' | ||
+ | |||
+ | ## Comment mettre à jour un service ? | ||
+ | |||
+ | Il pourrait être pertinent de créer une branche avant chaque mise à jour où vous n' | ||
+ | |||
+ | < | ||
+ | Les instructions spécifiques | ||
+ | </ | ||
+ | |||
+ | ### Mise à jour de la configuration | ||
+ | |||
+ | On appelle **configuration** tout ce qui ne nécessite pas de reconstruire l' | ||
+ | |||
+ | * Modification du `docker-compose.yml` (environnement, | ||
+ | * Modification d'un fichier de configuration monté dans le conteneur. Par exemple, Etherpad utilise un fichier [settings.json](https:// | ||
+ | * etc. | ||
+ | |||
+ | Il suffit de mettre à jour les fichiers souhaités, éventuellement de signaler les changements à l' | ||
+ | |||
+ | Si vous mettez à jour le tag d'une image officielle (*e.g* `postgres: | ||
+ | |||
+ | Toute image indiquée dans le fichier Compose **doit avoir un tag** (*e.g* `postgres: | ||
+ | |||
+ | ### Mise à jour d'une image maison | ||
+ | |||
+ | Certaines modifications nécessitent de reconstruire l' | ||
+ | |||
+ | * Changement d'un numéro de version dans une archive téléchargée dans le `Dockerfile`. Par exemple, Mattermost indique le numéro de version de la *release* à téléchargement [directement dans le Dockerfile](https:// | ||
+ | * Ajout d'un paquet. Par exemple, on pourrait avoir besoin de rajouter un module PHP pour une nouvelle extension [directement dans le Dockerfile](https:// | ||
+ | * Changement d'un script d' | ||
+ | * etc. | ||
+ | |||
+ | Vous pouvez travailler en local et tester l' | ||
+ | |||
+ | * Si on met à jour un service (version X → version Y), on passera le tag du fichier Compose de X à Y. | ||
+ | * Si on met juste à jour un fichier " | ||
+ | |||
+ | Dans tous les cas, on modifiera ou on créera le fichier `CHANGELOG.md` pour décrire les modifications apportées à l' | ||
+ | ## Que faire ensuite ? | ||
+ | |||
+ | Une fois arrivé à ce stade, votre nouvelle version du service est prête à être déployée depuis n' |