Dans une installation standard, Discourse (et par conséquent, les plugins) s’exécute à l’intérieur d’un conteneur Docker. Ce conteneur n’a pas un accès complet au système de fichiers hôte, il ne peut donc pas accéder au répertoire /var/discourse de l’hôte pour modifier app.yml ou exécuter launcher.
Et même s’il le pouvait… il y a une petite dépendance circulaire ici. L’exécution de ./launcher rebuild tuerait le conteneur Docker… ce qui tuerait le launcher rebuild que vous avez démarré à partir du plugin ![]()
Il existe des solutions potentielles ici. Par exemple, ajouter des montages de volumes Docker supplémentaires, afin que la configuration/le lanceur puisse être accédé depuis l’intérieur du conteneur. Mais ce n’est pas trivial.
Si ma mémoire est bonne, quelqu’un a créé un plugin de « gestionnaire de plugins »… qui nécessitait quelques ajustements à app.yml pour ajouter des éléments tels que le montage de volume. Mais je ne trouve plus de sujets à ce sujet, donc je suppose qu’il n’est plus maintenu. Peut-être que quelqu’un d’autre peut partager un lien s’il le trouve ? (ou peut-être que ce n’était qu’un rêve
)
Du côté de CDCK, nous privilégions définitivement l’utilisation de thèmes lorsque nous voulons que les clients puissent installer/mettre à jour/désinstaller à volonté. Permettre aux gens d’installer arbitrairement des plugins n’est pas une option, car cela affecterait les autres clients exécutant sur le même serveur.