J’ai déjà installé et configuré Discourse. Chaque fois que je reconstruis l’application, elle récupère le dépôt du lanceur, l’image Docker discourse/base et le dépôt Discourse.
Je souhaite limiter ce comportement afin que la reconstruction ne vérifie pas les mises à jour et ne les télécharge pas automatiquement, sauf si un paramètre spécifique est passé.
Quelqu’un a-t-il déjà fait quelque chose de similaire ?
Si oui, pourquoi ne pas simplement exécuter la commande de reconstruction ?
Pour information, les mises à jour vers la version stable peuvent être importantes - elles contiennent généralement des correctifs de vulnérabilités ou de bogues importants.
Oui, j’utilise l’approche autonome standard. Je comprends la nécessité de maintenir l’application à jour. Mon idée est d’ajouter un drapeau au lanceur lorsque je souhaite mettre à jour le dépôt.
Le but de la version stable est l’absence de changement. Pourquoi reconstruisez-vous quoi que ce soit ?
La raison pour laquelle il récupère le conteneur est de le maintenir en parité avec les exigences du code de discours.
Si vous souhaitez faire quelque chose comme entrer dans le conteneur sans effectuer de récupération, vous pouvez
docker exec -it app bash
Et si vous vouliez ajouter un plugin sans reconstruire, vous pourriez entrer dans le répertoire du plugin et le cloner, puis migrer la base de données, mais vous devez toujours vous assurer que vous obtenez le bon commit du plugin pour la version stable de strangle.
Étant donné que les versions stables sont relativement rares, elles ne présentent pas du tout souvent de changements majeurs et s’accompagnent généralement d’importantes mises à jour de sécurité lorsqu’il y en a une, je ne comprends pas votre exigence.
À mon avis, l’ajout d’un plugin est une bonne excuse pour mettre à jour et s’assurer que vous avez récupéré toutes les mises à jour disponibles.
Ne pas mettre à jour sur une version stable, à mon humble avis, est une mauvaise pratique car cela pourrait vous exposer plus longtemps à des vulnérabilités connues.
Non, ce n’est pas le cas, du moins pas correctement.
Cela peut fonctionner avec des plugins uniquement API, mais tout javascript ou nouveau plugin doit être compilé, ce qui se produit dans le processus de construction.
Par conséquent, pour ajouter un nouveau plugin, vous devez effectuer une reconstruction dans la plupart des cas.
L’autre problème que vous avez est que la modification des scripts de construction principaux peut vous causer de gros problèmes si vous ne faites pas attention, surtout s’il y a un changement suffisamment important dans les scripts principaux.