J’essaie de mettre à jour une installation très ancienne.
J’ai commencé par ceci :
cd /var/discourse
sudo git pull
sudo ./launcher rebuild app
Ensuite, j’obtiens un échec et en remontant le fichier log, la seule erreur est celle-ci :
ERROR: Error installing bundler:
bundler-2.5.3 requires Ruby version >= 3.0.0. The current ruby version is 2.7.2.137.
Comment puis-je obtenir une nouvelle installation de Ruby ? Le système a été installé à l’origine à partir d’une image Docker sur Digital Ocean et n’a pas été beaucoup mis à niveau, voire pas du tout, depuis plusieurs années.
Il fonctionne sous Ubuntu 18.04.
J’ai exécuté ./discourse-doctor
et il y a eu un état de tête détachée, puis une reconstruction et ensuite la même erreur Ruby.
Je suis complètement perdu maintenant.
Quelqu’un peut-il m’aider à faire fonctionner une mise à niveau à partir d’une ancienne version ?
Je ne sais pas comment faire ça, mais d’après la sortie du docteur de discours, j’ai trouvé ceci
VERSION DOCKER : Docker version 19.03.1, build 74b1e89
Compte tenu de l’âge de la machine hôte, votre meilleure option ici est probablement de faire une sauvegarde du site, de créer un nouveau serveur, d’effectuer l’installation, puis de restaurer la sauvegarde sur le nouveau serveur.
Ce sera moins de travail (et beaucoup plus facile) que de mettre à niveau le serveur existant.
Mais comme l’installation a échoué, je ne peux pas lancer Discourse pour obtenir une sauvegarde. Je peux faire un instantané de la goutte DigitalOcean et l’ai fait, mais ce n’est pas vraiment une sauvegarde, d’après ce que je comprends.
Si vous avez une sauvegarde de la gouttelette avec toutes vos données avant d’essayer de mettre à jour le conteneur, vous devriez pouvoir en récupérer une sauvegarde.
Sinon, vous allez presque certainement bien, mais vous avez besoin de quelqu’un qui maîtrise le processus pour pouvoir en extraire les données si vous ne parvenez pas à remettre le conteneur en marche.
Pour l’instant, même avec la mauvaise passerelle, si vous pouvez accéder au conteneur, vous devriez pouvoir exécuter une sauvegarde discourse et récupérer vos données.