FEHLER BEIM BOOTSTRAPPING bei der Einrichtung

Dieser Fehler beim Einrichten von Discourse:

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && gem update bundler failed with return #<Process::Status: pid 297 exit 1>
Location of failure: /pups/lib/pups/exec_command.rb:112:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"web", "cmd"=>["gem update bundler", "find $home ! -user discourse -exec chown discourse {} \\+"]}
d85fae83cd3f933238f0e21e6e562469400baf63643d9c6dcd138c739dfa0830
** FAILED TO BOOTSTRAP ** Bitte scrollen Sie nach oben und suchen Sie nach früheren Fehlermeldungen; es kann mehr als eine geben.
./discourse-doctor kann bei der Diagnose des Problems helfen.

Ich habe einige Lösungen ausprobiert, aber sie haben nicht funktioniert.

Hast du Discourse Doctor ausprobiert?

./discourse-doctor
FEHLGESCHLAGEN
--------------------
Pups::ExecError: cd /var/www/discourse && gem update bundler fehlgeschlagen mit Rückgabewert #<Process::Status: pid 298 exit 1>
Fehlerort: /pups/lib/pups/exec_command.rb:112:in `spawn'
Ausführung fehlgeschlagen mit den Parametern {"cd"=>"$home", "hook"=>"web", "cmd"=>["gem update bundler", "find $home ! -user discourse -exec chown discourse {} \\+"]}
00e8acc18f87b395d0b4f8de4d859dad8c8824b148243fa8f0c6085e5b0982a4
** BOOTSTRAP FEHLGESCHLAGEN ** Bitte scrollen Sie nach oben und suchen Sie nach früheren Fehlermeldungen; es kann mehr als eine geben.
./discourse-doctor kann helfen, das Problem zu diagnostizieren.
==================== ENDE DES NEUAUFBAU-LOGS ====================
Neuaufbau der Anwendung fehlgeschlagen.

Prüfe Ihre Domain-Adresse . . .

Verbindung zu sosyal.dursuncanpoyraz.com.tr erfolgreich.
Sie sollten wahrscheinlich alle nicht-standardmäßigen Plugins entfernen und den Neuaufbau durchführen.
Versuche, den vorhandenen Container neu zu starten . . . 

+ /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
Das Bild 'local_discourse/app:latest' ist lokal nicht verfügbar.
docker: Fehlerantwort vom Daemon: Zugriffsverweigerung beim Pull für local_discourse/app; das Repository existiert nicht oder es ist möglicherweise ein 'docker login' erforderlich: verweigert: angefordeter Zugriff auf die Ressource wurde verweigert.
Siehe 'docker run --help'.
Neustart des Containers fehlgeschlagen.


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

Keine nicht-offiziellen Plugins erkannt.

Siehe https://github.com/discourse/discourse/blob/master/lib/plugin/metadata.rb für die offizielle Liste.

========================================

Bitte füge ein paar Zeilen über der FAILED-Meldung hinzu. Ich gehe davon aus, dass es sich um eine Neuinstallation handelt? Falls nicht, hast du Änderungen an der Datei app.yml vorgenommen?

Es sieht so aus, als könnte Docker das Basis-Image nicht pullen. Ich habe das schon mal gesehen, glaube ich, als ich mich zuvor bei Docker Hub angemeldet hatte, aber die Anmeldung abgelaufen war? Oder du hast die Rate-Limits erreicht?

Könnte das Problem von der Sicherheitsregel auf dem virtuellen Server stammen? Am ersten Tag, als ich den virtuellen Server betreten habe, trat derselbe Fehler auf.

Edit:
Ich kenne Docker nicht. Ich habe gestern erst angefangen, es zu lernen. Gestern habe ich höchstens 20 Images heruntergeladen.

Keine Lösung? Kann mir jemand helfen?

Sie können versuchen, eine neue VM zu starten und/oder ein einfaches Docker-Programm auszuführen. Es gibt dort eine Art ‘Hello World’-Beispiel. So können Sie prüfen, ob Docker überhaupt funktioniert.

Docker funktioniert. Ich habe Teamspeak 3 mit Docker installiert. Ich habe sogar Nginx installiert und den Port 80 getestet. Doch bei Discourses Befehl tritt ein Fehler auf.

Ich habe die Einrichtung von Grund auf neu gestartet.

root@localhost:~# su -
root@localhost:~# git clone https://github.com/discourse/discourse_docker.git /var/discourse
Cloning into '/var/discourse'...
remote: Enumerating objects: 5025, done.
remote: Total 5025 (delta 0), reused 0 (delta 0), pack-reused 5025
Receiving objects: 100% (5025/5025), 1.10 MiB | 2.40 MiB/s, done.
Resolving deltas: 100% (3259/3259), done.
root@localhost:~# cd /var/discourse
root@localhost:/var/discourse# ./discourse-setup
Docker nicht installiert. Drücke Enter, um die Installation über https://get.docker.com/ zu starten, oder Ctrl+C zum Beenden.
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 13857  100 13857    0     0   6805      0  0:00:02  0:00:02 --:--:--  6809
# Führe Docker-Installationsskript aus, 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
Warnung: Die Ausgabe von apt-key sollte nicht geparst werden (stdout ist kein 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

Server: Docker Engine - Community
 Engine:
  Version:          20.10.2
  API version:      1.41 (minimale Version 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
Wenn Sie Docker als Nicht-Root-Benutzer verwenden möchten, sollten Sie nun überlegen,
den Benutzernamen zur Gruppe "docker" hinzuzufügen, z. B. mit:

  sudo usermod -aG docker your-user

Denken Sie daran, dass Sie sich ausloggen und wieder anmelden müssen, damit dies wirksam wird!

WARNUNG: Das Hinzufügen eines Benutzers zur Gruppe "docker" gewährt die Möglichkeit,
         Container auszuführen, die verwendet werden können, um Root-Rechte auf dem
         Docker-Host zu erlangen.
         Weitere Informationen finden Sie unter https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
Port 80 scheint bereits belegt zu sein.

Dies zeigt Ihnen, welcher Befehl Port 80 verwendet.
COMMAND  PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx    958     root    8u  IPv4  20899      0t0  TCP *:http (LISTEN)
nginx    958     root    9u  IPv6  20901      0t0  TCP *:http (LISTEN)
nginx   3368 www-data    8u  IPv4  20899      0t0  TCP *:http (LISTEN)
nginx   3368 www-data    9u  IPv6  20901      0t0  TCP *:http (LISTEN)

Wenn Sie Discourse gleichzeitig mit einem anderen Webserver wie Apache oder nginx
ausführen möchten, müssen Sie einen anderen Port binden.

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

Wenn Sie bereits konfiguriertes Discourse neu konfigurieren möchten, verwenden Sie

./launcher stop app

um Discourse zu stoppen, bevor Sie es neu konfigurieren und es erneut versuchen.
root@localhost:/var/discourse# ./launcher stop app

WARNUNG: Wir beginnen gleich mit dem Herunterladen des Discourse-Basisimages.
Dieser Vorgang kann je nach Ihrer Netzwerkgeschwindigkeit zwischen wenigen Minuten und einer Stunde dauern.

Bitte haben Sie Geduld.

2.0.20201221-2020: Pulling from discourse/base
6ec7b7d162b2: Pull complete 
488a5181297e: Extracting [========================>                          ]  384.9MB/775.2MB
^C
root@localhost:/var/discourse# ./launcher stop app

WARNUNG: Wir beginnen gleich mit dem Herunterladen des Discourse-Basisimages.
Dieser Vorgang kann je nach Ihrer Netzwerkgeschwindigkeit zwischen wenigen Minuten und einer Stunde dauern.

Bitte haben Sie Geduld.

2.0.20201221-2020: Pulling from discourse/base
6ec7b7d162b2: Pull complete 
488a5181297e: Pull complete 
Digest: sha256:e181dd9046cc293b10c5b29bbc21c5aa8b939ba5f0c500da4a9e952ed0b5195d
Status: Downloaded newer image for discourse/base:2.0.20201221-2020
docker.io/discourse/base:2.0.20201221-2020
Konfigurationsdatei nicht gefunden. Stellen Sie sicher, dass containers/app.yml existiert.

ls: kann auf '*.yml' nicht zugreifen: Datei oder Verzeichnis nicht gefunden
Verfügbare Konfigurationen ( )

Wie gezeigt, können Sie die Discourse-Einrichtung nicht verwenden, wenn auf Port 80 oder 443 bereits etwas läuft.

Ja, es funktioniert. Wie kann ich den Nginx-Port für Discourse ändern? Ich habe Ghost auf meinem Server installiert. Warum kann ich es nicht auf Port 80 und 443 verwenden?