ÉCHEC DU LANCEMENT lors de l'installation

Cette erreur lors de l’installation de Discourse :

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && gem update bundler a échoué avec le retour #<Process::Status: pid 297 exit 1>
Emplacement de l'échec : /pups/lib/pups/exec_command.rb:112:in `spawn'
L'exécution a échoué avec les paramètres {"cd"=>"$home", "hook"=>"web", "cmd"=>["gem update bundler", "find $home ! -user discourse -exec chown discourse {} \\+"]}
d85fae83cd3f933238f0e21e6e562469400baf63643d9c6dcd138c739dfa0830
** ÉCHEC DE L'INITIALISATION ** Veuillez faire défiler vers le haut et rechercher les messages d'erreur antérieurs ; il peut y en avoir plusieurs.
./discourse-doctor peut aider à diagnostiquer le problème.

J’ai essayé plusieurs solutions, mais cela n’a pas fonctionné.

1 « J'aime »

Avez-vous essayé Discourse Doctor ?

1 « J'aime »
./discourse-doctor
ÉCHEC
--------------------
Pups::ExecError: cd /var/www/discourse && gem update bundler a échoué avec le retour #<Process::Status: pid 298 exit 1>
Emplacement de l'échec : /pups/lib/pups/exec_command.rb:112:in `spawn'
Échec de l'exécution avec les paramètres {"cd"=>"$home", "hook"=>"web", "cmd"=>["gem update bundler", "find $home ! -user discourse -exec chown discourse {} \\+"]}
00e8acc18f87b395d0b4f8de4d859dad8c8824b148243fa8f0c6085e5b0982a4
** ÉCHEC DU BOOTSTRAP ** Veuillez faire défiler vers le haut et rechercher les messages d'erreur antérieurs, il peut y en avoir plus d'un.
./discourse-doctor peut aider à diagnostiquer le problème.
==================== FIN DU JOURNAL DE RECONSTRUCTION ====================
Échec de la reconstruction de l'application.

Vérification de votre nom de domaine . . .

Connexion à sosyal.dursuncanpoyraz.com.tr 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=4 -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 LETSENCRYPT_DIR=/shared/letsencrypt -e DISCOURSE_DEFAULT_LOCALE=en -e DISCOURSE_HOSTNAME=sosyal.dursuncanpoyraz.com.tr -e DISCOURSE_DEVELOPER_EMAILS=poyrazdursuncan@gmail.com -e DISCOURSE_SMTP_ADDRESS=smtp.gmail.com -e DISCOURSE_SMTP_PORT=587 -e DISCOURSE_SMTP_USER_NAME=poyrazdursuncan@gmail.com -e 'DISCOURSE_SMTP_PASSWORD=Poyraz!19681973' -e DISCOURSE_SMTP_ENABLE_START_TLS=true -e LETSENCRYPT_ACCOUNT_EMAIL= -h localhost-app -e DOCKER_HOST_IP=172.17.0.1 --name app -t -p 80:80 -p 443:443 -v /var/discourse/shared/standalone:/shared -v /var/discourse/shared/standalone/log/var-log:/var/log --mac-address 02:78:00:1c:c3:10 local_discourse/app /sbin/boot
Impossible de trouver l'image 'local_discourse/app:latest' localement
docker : Réponse d'erreur du démon : accès refusé pour local_discourse/app, le référentiel n'existe pas ou peut nécessiter 'docker login' : refusé : accès demandé à la ressource refusé.
Voir 'docker run --help'.
Échec du redémarrage du conteneur.


==================== PLUGINS ====================
          - git clone https://github.com/discourse/docker_manager.git

Aucun plugin non officiel détecté.

Voir https://github.com/discourse/discourse/blob/master/lib/plugin/metadata.rb pour la liste officielle.

========================================
1 « J'aime »

Veuillez inclure quelques lignes supplémentaires au-dessus du message FAILED. Je suppose qu’il s’agit d’une installation récente ? Sinon, avez-vous apporté des modifications au fichier app.yml ?

1 « J'aime »

Il semble que Docker ne parvienne pas à récupérer l’image de base. J’ai déjà vu cela se produire, je pense, lorsque j’avais précédemment connecté à Docker Hub mais que la session avait expiré ? Ou avez-vous atteint les limites de taux ?

2 « J'aime »

Le problème pourrait-il provenir de la règle de sécurité sur le serveur virtuel ? Le premier jour où je me suis connecté au serveur virtuel, la même erreur est apparue.

Édition :
Je ne connais pas Docker. J’ai commencé à l’apprendre hier. J’ai téléchargé au maximum 20 images hier.

1 « J'aime »

Pas de solution ? Y a-t-il quelqu’un pour aider ?

Vous pouvez essayer de lancer une nouvelle machine virtuelle et/ou d’exécuter un programme Docker trivial. Ils proposent quelque chose du type « Hello World ». Vous pourrez ainsi vérifier si Docker fonctionne du tout.

1 « J'aime »

Docker fonctionne. J’ai installé TeamSpeak 3 avec Docker. J’ai même installé Nginx et testé le port 80. Mais cela génère une erreur lors de la commande de Discourse.

J’ai commencé la configuration depuis zéro.

root@localhost:~# su -
root@localhost:~# git clone https://github.com/discourse/discourse_docker.git /var/discourse
Clonage dans '/var/discourse'...
remote: Énumération des objets : 5025, terminé.
remote: Total 5025 (delta 0), réutilisé 0 (delta 0), pack réutilisé 5025
Réception des objets : 100 % (5025/5025), 1,10 Mio | 2,40 Mio/s, terminé.
Résolution des deltas : 100 % (3259/3259), terminé.
root@localhost:~# cd /var/discourse
root@localhost:/var/discourse# ./discourse-setup
Docker n'est pas installé. Appuyez sur Entrée pour l'installer depuis https://get.docker.com/ ou Ctrl+C pour quitter
  % Total    % Reçu % Transféré Vitesse Moyenne   Temps    Temps     Temps    Actuel
                                 Téléch. Upload   Total   Déjà    Restant  Actuel
100 13857  100 13857    0     0   6805      0  0:00:02  0:00:02 --:--:--  6809
# Exécution du script d'installation de Docker, commit : 3d8fe77c2c46c5b7571f94b42793905e5b3e42e4
+ sh -c apt-get update -qq > /dev/null
+ sh -c DEBIAN_FRONTEND=noninteractive apt-get install -y -qq apt-transport-https ca-certificates curl > /dev/null
+ sh -c curl -fsSL "https://download.docker.com/linux/ubuntu/gpg" | apt-key add -qq - > /dev/null
Avertissement : la sortie d'apt-key ne doit pas être analysée (stdout n'est pas un terminal)
+ sh -c echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable" > /etc/apt/sources.list.d/docker.list
+ sh -c apt-get update -qq > /dev/null
+ [ -n  ]
+ sh -c apt-get install -y -qq --no-install-recommends docker-ce > /dev/null
+ sh -c docker version
Client: Docker Engine - Community
 Version:           20.10.2
 API version:       1.41
 Go version:        go1.13.15
 Git commit:        2291f61
 Built:             Mon Dec 28 16:17:32 2020
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Serveur: Docker Engine - Community
 Moteur:
  Version:          20.10.2
  API version:      1.41 (version minimale 1.12)
  Go version:       go1.13.15
  Git commit:       8891c58
  Built:            Mon Dec 28 16:15:09 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.3
  GitCommit:        269548fa27e0089a8b8278fc4fc781d7f65a939b
 runc:
  Version:          1.0.0-rc92
  GitCommit:        ff819c7e9184c13b7c2607fe6c30ae19403a7aff
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
Si vous souhaitez utiliser Docker en tant qu'utilisateur non root, vous devriez maintenant envisager
d'ajouter votre utilisateur au groupe "docker" avec une commande comme :

  sudo usermod -aG docker votre-utilisateur

N'oubliez pas que vous devrez vous déconnecter et vous reconnecter pour que cela prenne effet !

AVERTISSEMENT : L'ajout d'un utilisateur au groupe "docker" lui donnera la capacité d'exécuter
         des conteneurs qui peuvent être utilisés pour obtenir des privilèges root sur l'hôte
         Docker.
         Consultez https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
         pour plus d'informations.
Le port 80 semble déjà être utilisé.

Cela vous montrera quelle commande utilise le port 80
COMMANDE  PID     UTILISATEUR   FD   TYPE DEVICE SIZE/OFF NODE NOM
nginx    958     root    8u  IPv4  20899      0t0  TCP *:http (ÉCOUTE)
nginx    958     root    9u  IPv6  20901      0t0  TCP *:http (ÉCOUTE)
nginx   3368 www-data    8u  IPv4  20899      0t0  TCP *:http (ÉCOUTE)
nginx   3368 www-data    9u  IPv6  20901      0t0  TCP *:http (ÉCOUTE)

Si vous essayez d'exécuter Discourse simultanément avec un autre serveur
web comme Apache ou nginx, vous devrez vous lier à un port différent.

Voir https://meta.discourse.org/t/17247

Si vous reconfigurez une instance Discourse déjà configurée, utilisez

./launcher stop app

pour arrêter Discourse avant de le reconfigurer et de réessayer.
root@localhost:/var/discourse# ./launcher stop app

AVERTISSEMENT : Nous allons commencer à télécharger l'image de base de Discourse
Ce processus peut prendre de quelques minutes à une heure, selon la vitesse de votre réseau

Veuillez patienter

2.0.20201221-2020 : Extraction depuis discourse/base
6ec7b7d162b2 : Extraction terminée
488a5181297e : Extraction [========================>                          ]  384,9 Mo/775,2 Mo
^C
root@localhost:/var/discourse# ./launcher stop app

AVERTISSEMENT : Nous allons commencer à télécharger l'image de base de Discourse
Ce processus peut prendre de quelques minutes à une heure, selon la vitesse de votre réseau

Veuillez patienter

2.0.20201221-2020 : Extraction depuis discourse/base
6ec7b7d162b2 : Extraction terminée
488a5181297e : Extraction terminée
Digest : sha256:e181dd9046cc293b10c5b29bbc21c5aa8b939ba5f0c500da4a9e952ed0b5195d
Statut : Nouvelle image téléchargée pour discourse/base:2.0.20201221-2020
docker.io/discourse/base:2.0.20201221-2020
Fichier de configuration non trouvé, assurez-vous que containers/app.yml existe

ls : impossible d'accéder à '*.yml' : Aucun fichier ou répertoire de ce type
Configurations disponibles ( )

Comme l’indique l’affichage, vous ne pouvez pas utiliser la configuration de Discourse si quelque chose est déjà en cours d’exécution sur les ports 80 ou 443.

2 « J'aime »

Oui, ça fonctionne. Comment puis-je changer le port Nginx pour Discourse ? J’ai installé Ghost sur mon serveur. Pourquoi ne puis-je pas l’utiliser sur les ports 80 et 443 ?