Impossible de mettre à jour en raison d'une ancienne version de Docker

Pendant la mise à niveau, j’ai exécuté cd /var/discourse; git pull; ./launcher rebuild app.

J’obtiens « Mise à niveau terminée » et « MAJ DE POSTGRES TERMINÉE ». Cette dernière indique de « reconstruire à nouveau », bien que cela ne semble faire aucune différence.

Malgré la fin de la mise à niveau, je ne peux pas démarrer l’application. L’exécution de ./launcher start app génère l’erreur suivante :

Impossible de trouver l'image 'local_discourse/app:latest' localement
/usr/bin/docker : Réponse d'erreur du démon : accès au téléchargement refusé pour local_discourse/app, le dépôt n'existe pas ou peut nécessiter une connexion 'docker login'.
Voir '/usr/bin/docker run --help'.

Je ne peux pas redémarrer mon application et je ne sais pas comment procéder.

./discourse-doctor n’aide pas (il détecte simplement que l’application n’est pas en cours d’exécution, tente de reconstruire et de redémarrer, et aboutit au même erreur).

Je ne peux pas joindre de fichier, étant un nouvel utilisateur, voici donc ce que je pense être l’extrait pertinent du journal de débogage :

Échec de la reconstruction de l'application.

Vérification de votre nom de domaine . . .

Connexion à community.gingkoapp.com réussie.
Vous devriez probablement supprimer tous les plugins non standard et reconstruire.
Tentative de redémarrage du conteneur existant . . .

+ /usr/bin/docker run --shm-size=512m -d --restart=always -e LANG=en_US.UTF-8 -e RAILS_ENV=production -e UNICORN_WORKERS=2 -e UNICORN_SIDEKIQS=1 -e RUBY_GLOBAL_METHOD_CACHE_SIZE=131072 -e RUBY_GC_HEAP_GROWTH_MAX_SLOTS=40000 -e RUBY_GC_HEAP_INIT_SLOTS=400000 -e RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=1.5 -e DISCOURSE_DB_SOCKET=/var/run/postgresql -e DISCOURSE_DB_HOST= -e DISCOURSE_DB_PORT= -e DISCOURSE_DEVELOPER_EMAILS=REDACTED  -e DISCOURSE_HOSTNAME=community.gingkoapp.com -e DISCOURSE_SMTP_ADDRESS=smtp.mailgun.org -e DISCOURSE_SMTP_USER_NAME=postmaster@community.gingkoapp.com -e DISCOURSE_SMTP_PASSWORD=REDACTED  -h community-app -e DOCKER_HOST_IP=172.17.0.1 --name app -t -p 80:80 -p 2222:22 -v /var/discourse/shared/standalone:/shared -v /var/discourse/shared/standalone/log/var-log:/var/log --mac-address 02:fc:04:ee:f5:11 local_discourse/app /sbin/boot
Impossible de trouver l'image 'local_discourse/app:latest' localement
/usr/bin/docker : Réponse d'erreur du démon : accès au téléchargement refusé pour local_discourse/app, le dépôt n'existe pas ou peut nécessiter une connexion 'docker login'.
Voir '/usr/bin/docker run --help'.
Échec du redémarrage du conteneur.
  1. Quelle est votre version de Docker ?
  2. Avez-vous essayé les solutions suggérées dans cette FAQ ?

Merci !

Version Docker 17.12.0-ce

Je me trouve dans un environnement à espace limité (on me demande constamment de tenter de nettoyer les images), ce qui semble être une raison plausible de cet échec.

Je vais essayer les étapes listées et vous tiendrai informé.

Votre version discourse docker est trop ancienne. Je vous suggère de la mettre à jour avant de continuer.

Je ne suis pas sûr de savoir comment faire cela sans l’interface web (ou curl vers l’API), étant donné qu’elle est hors service. Mais je vais regarder ça. Je vais d’abord augmenter la taille du disque de mon droplet et voir si cela aide.

(à moins que vous vouliez dire que ma version de docker est ancienne ?)

Oh, je suis désolé. Je voulais dire que Docker est trop ancien. Essayez de le mettre à niveau en premier. Je suis vraiment désolé pour la faute de frappe et la confusion.

Pas de souci, j’ai compris que c’était ce que vous vouliez dire, puisque vous avez demandé la version de Docker. Je suis également sous 14.04, donc je vais d’abord passer à la 16.04.

Encore merci pour vos retours. Je publierai toute nouvelle mise à jour.

Mon Dieu !

14.04 > 16.04 > 18.04, vous avez une longue journée devant vous.

Gardez simplement à l’esprit que 16.04 arrive aussi à son terme en 2021, donc passez directement à au moins 18.04.

Travailler dur juste pour rester sur place… c’est toute ma vie !
Le logiciel évolue trop vite pour moi ! :stuck_out_tongue_closed_eyes:

2 « J'aime »

Je vous souhaite le meilleur dans cette nouvelle aventure des mises à jour logicielles. :confetti_ball:

Si cela concerne un VPS, il n’est pas nécessaire de mettre à niveau le serveur actuel. Créer un nouveau serveur sous 20.04 et y déplacer votre site est beaucoup plus rapide et plus simple.

Mais leur conteneur est dysfonctionnel et ne démarre pas pour plusieurs raisons.

La dernière sauvegarde automatique se trouvera dans le dossier partagé et sera transférée vers le nouveau serveur.

1 « J'aime »

Où puis-je trouver quelle est actuellement la version de Docker la plus ancienne encore prise en charge par Discourse ?

Voici

1 « J'aime »

Oui, c’est ce que je fais en ce moment. Cela devrait être beaucoup plus rapide que de mettre à niveau l’actuel… croisons les doigts pour que je puisse restaurer depuis les fichiers de sauvegarde (auxquels j’ai toujours accès sur l’ancien serveur).

2 « J'aime »

Merci..!

Donc il semble que celui-ci soit bien pris en charge dans Discourse actuel.. Pourquoi pensez-vous qu’il est trop ancien @itsbhanusharma ?

1 « J'aime »

Qui a dit que c’était pris en charge ?

Toute version de Docker âgée de quelques années n’est même plus prise en charge par son développeur, alors comment pouvez-vous vous attendre à ce que Discourse la prenne en charge ?

Je regarde simplement le code source…

1 « J'aime »

Tout est rentré dans l’ordre. J’ai lancé un nouveau droplet chez Digital Ocean et restauré la sauvegarde. La dernière sauvegarde était probablement corrompue, mais j’ai au moins perdu un ou deux messages et j’ai réussi à restaurer à partir de la sauvegarde précédente.

Merci à tous pour votre aide !

3 « J'aime »