Je ne cherche absolument pas à rejeter la faute. Le problème avec l’auto-hébergement, plus précisément, n’est pas forcément la compréhension du système d’exploitation du serveur. La plupart des gens installent un système d’exploitation et le maintiennent généralement à jour. Mais souvent, avec les LTS (Long Term Support), ils ne savent peut-être pas ou ne comprennent pas la mise à niveau du système d’exploitation, surtout s’ils sont habitués aux versions “rolling release” (versions continues).
Par exemple, une entreprise que j’aide, après ne pas avoir fait de mises à jour pendant un certain temps, a remarqué qu’une mise à jour était disponible. Ils ont donc mis à jour Docker via l’interface web, ce qui leur a ensuite permis de mettre à jour Discourse.
Étant donné que la version d’Ubuntu LTS n’était pas assez récente, la mise à jour de Docker ne répondait pas à la configuration minimale requise. Pourtant, l’interface web a quand même permis de tenter la mise à jour, qui a bien sûr échoué et a mis le site hors service.
Ils ont donc tenté une reconstruction en ligne de commande, qui a bien sûr échoué en raison du non-respect des exigences minimales.
Si la mise à jour dans le web avait identifié que la version de Docker n’était pas la version minimale, elle aurait pu interrompre le processus de mise à jour en signalant une dépendance non satisfaite, sans que le site ne soit hors service.
J’ai jeté un coup d’œil général pour eux. Comme il semble qu’ils utilisent peut-être d’autres choses sur le serveur, je leur ai demandé de faire en sorte que leur technicien examine la possibilité de mettre à niveau la LTS vers une version plus récente. Je ne voulais pas essayer de mettre à niveau le système d’exploitation au cas où cela casserait d’autres choses qu’ils utilisent.
Existe-t-il un moyen simple de redémarrer le conteneur avant la tentative de reconstruction via le web et la ligne de commande ?
J’ai essayé ./launcher start app
Ce qui a échoué.
Autre chose. Étant donné la façon dont le site Discourse est tombé en panne, est-ce que la mise en place d’un nouveau serveur avec rsync fonctionnerait ? Ils utilisent la version stable au lieu de la version “tests passed” (tests réussis) recommandée.
Si ils exécutent la commande « do-release-upgrade » et mettent à niveau Docker manuellement, cela serait-il efficace pour mettre à niveau postgreq ?