Votre installation Docker n'utilise pas un pilote de stockage pris en charge.

Bonjour, utilisateur de Discourse pour la première fois et ayant peu de connaissances techniques.

J’ai installé Discourse sur Lightsail Ubuntu 18.04.2 en suivant les instructions officielles. Le forum est opérationnel sans aucun problème.

J’ai ensuite essayé d’installer un plugin : Install plugins on a self-hosted site

La commande ./launcher rebuild app renvoie cette erreur :

“Votre installation Docker n’utilise pas un pilote de stockage pris en charge. Si nous procédons, votre installation risque d’être corrompue. aufs est le pilote de stockage recommandé, bien que zfs/btrfs/overlay et overlay2 puissent également fonctionner. D’autres pilotes de stockage sont connus pour poser problème. Vous pouvez déterminer quel système de fichiers vous utilisez en exécutant “docker info” et en regardant la ligne ‘Storage Driver’. Si vous souhaitez quand même continuer avec votre pilote de stockage non pris en charge, lisez le code source de launcher et trouvez comment contourner cette vérification.”

J’ai cherché le même message sur ce forum, mais je ne suis pas clair sur la marche à suivre d’après les réponses.

La commande docker info sur ma configuration indique overlay2.

Je ne comprends pas comment Discourse peut s’installer correctement, puis que l’installation du plugin/reconstruction échoue.

Entre l’installation et la tentative d’installation du plugin/reconstruction, j’ai uniquement mis à jour Discourse et le gestionnaire Docker suite à une notification, et exécuté apt-get update et apt-get upgrade.

Quelqu’un peut-il préciser si overlay2 peut fonctionner ? Ou si aufs est nécessaire ? Quelles sont exactement les instructions à suivre pour que l’installation du plugin fonctionne ?

Merci beaucoup,
Maynard

Pourriez-vous exécuter docker info et coller le résultat ici ?

Merci beaucoup pour votre réponse rapide. Voici la sortie de docker info :

Client:
 Debug Mode: false

Server:
 Containers: 1
Running: 1
Paused: 0
Stopped: 0
 Images: 2
 Server Version: 19.03.1
 Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
 runc version: 425e105d5a03fabd737a126ad93d62a9eeede87f
 init version: fec3683
 Security Options:
apparmor
seccomp
Profile: default
 Kernel Version: 4.15.0-1044-aws
 Operating System: Ubuntu 18.04.2 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 1
 Total Memory: 1.945GiB
 Name: ip-172-26-45-250
 ID: X2FT:FW3R:QQM2:BNNU:4L3L:QYEV:WMI4:IC2T:LHJV:UNSG:RYHH:OWJ7
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
127.0.0.0/8
 Live Restore Enabled: false

WARNING: No swap limit support

Oh, je pense que je sais ce qui se passe.

Essayez :

cd /var/discourse
git pull
./launcher rebuild app

Merci encore pour votre réponse rapide.

L’ajout de la commande git pull a fonctionné et le plugin Data Explorer fonctionne désormais.

Étrange. Qu’est-ce que c’était ?

Eh bien, c’est une longue histoire.

Docker 19.x a complètement modifié la structure de la sortie de docker info.

Nous avons corrigé cela lorsque la version 19.x était encore sur la branche bêta, il y a plus d’un mois, à l’adresse FIX: Make storage detection compatible with docker 19.x · discourse/discourse_docker@98c5fec · GitHub. Le fait que notre script de lancement se mette à jour automatiquement rend ce problème mineur pour la plupart des gens.

Cependant, notre script launcher vérifie la compatibilité du stockage avant de se mettre à jour automatiquement. Ainsi, les personnes qui disposent d’un ancien script de lancement et qui mettent à jour Docker avant de mettre à jour le script de lancement peuvent se retrouver dans cet état.

Ce n’est pas la première fois que nous rencontrons ce problème. Le lanceur ne pourrait-il pas d’abord se mettre à jour, puis demander à l’utilisateur de le relancer ?

Oui, ça devrait fonctionner. Tu veux essayer ce changement ?