FALLITO IL BOOTSTRAP durante l'installazione

Questo errore durante l’installazione di 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 ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.

Ho provato alcune soluzioni, ma non hanno funzionato.

Hai provato Discourse Doctor?

./discourse-doctor
FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && gem update bundler fallito con ritorno #<Process::Status: pid 298 exit 1>
Posizione dell'errore: /pups/lib/pups/exec_command.rb:112:in `spawn'
Esecuzione fallita con i parametri {"cd"=>"$home", "hook"=>"web", "cmd"=>["gem update bundler", "find $home ! -user discourse -exec chown discourse {} \\+"]}
00e8acc18f87b395d0b4f8de4d859dad8c8824b148243fa8f0c6085e5b0982a4
** BOOTSTRAP FALLITO ** scorri verso l'alto e cerca messaggi di errore precedenti, potrebbero essercene più di uno.
./discourse-doctor può aiutare a diagnosticare il problema.
==================== FINE LOG DI RICOSTRUZIONE ====================
Impossibile ricreare l'applicazione.

Verifica del nome di dominio . . .

Connessione a sosyal.dursuncanpoyraz.com.tr riuscita.
Probabilmente dovresti rimuovere eventuali plugin non standard e ricreare l'applicazione.
Tentativo di riavvio del contenitore esistente . . . 

+ /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
Impossibile trovare l'immagine 'local_discourse/app:latest' localmente
docker: Errore di risposta dal demone: accesso al pull negato per local_discourse/app, il repository non esiste o potrebbe richiedere 'docker login': negato: accesso alla risorsa richiesto negato.
Vedi 'docker run --help'.
Impossibile riavviare il contenitore.


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

Nessun plugin non ufficiale rilevato.

Vedi https://github.com/discourse/discourse/blob/master/lib/plugin/metadata.rb per l'elenco ufficiale.

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

Inserisci alcune righe in più sopra il messaggio FAILED. Immagino si tratti di un’installazione recente? In caso contrario, hai apportato modifiche al file app.yml?

Sembra che Docker non riesca a scaricare l’immagine base. Ho visto questo accadere, credo, quando avevo precedentemente effettuato il login su Docker Hub ma la sessione era scaduta? O hai raggiunto i limiti di velocità?

Il problema potrebbe essere legato alla regola di sicurezza sul server virtuale? Il primo giorno in cui sono entrato nel server virtuale, ho ricevuto lo stesso errore.

Modifica:
Non conosco Docker. Ho iniziato a studiarlo ieri. Ho scaricato al massimo 20 immagini ieri.

Nessuna soluzione? C’è qualcuno che può aiutare?

Puoi provare ad avviare una nuova VM e/o eseguire un programma Docker banale. Esiste una sorta di “Hello World”. Puoi verificare se Docker funziona affatto.

Docker funziona. Ho installato TeamSpeak3 con Docker. Ho anche installato Nginx e testato la porta 80. Ma restituisce un errore nel comando di Discourse.

Ho iniziato la configurazione da zero.

root@localhost:~# su -
root@localhost:~# git clone https://github.com/discourse/discourse_docker.git /var/discourse
Clonazione in '/var/discourse'...
remote: Enumerazione degli oggetti: 5025, completata.
remote: Totale 5025 (delta 0), riutilizzati 0 (delta 0), pack-riutilizzati 5025
Ricezione degli oggetti: 100% (5025/5025), 1.10 MiB | 2.40 MiB/s, completata.
Risoluzione delle differenze: 100% (3259/3259), completata.
root@localhost:~# cd /var/discourse
root@localhost:/var/discourse# ./discourse-setup
Docker non installato. Premi Invio per installare da https://get.docker.com/ o Ctrl+C per uscire
  % Totale    % Ricevuto % Xferd  Velocità Media   Tempo    Tempo     Tempo  Attuale
                                 Download Upload   Totale   Speso    Rimasto  Attuale
100 13857  100 13857    0     0   6805      0  0:00:02  0:00:02 --:--:--  6809
# Esecuzione dello script di installazione di 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
Avviso: l'output di apt-key non deve essere analizzato (stdout non è un terminale)
+ 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 (versione minima 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
Se desideri utilizzare Docker come utente non root, dovresti ora considerare
di aggiungere il tuo utente al gruppo "docker" con un comando simile a:

  sudo usermod -aG docker tuo-utente

Ricorda che dovrai uscire e accedere nuovamente perché ciò abbia effetto!

ATTENZIONE: Aggiungere un utente al gruppo "docker" concederà la possibilità di eseguire
         container che possono essere utilizzati per ottenere privilegi di root sul
         host Docker.
         Consulta https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
         per ulteriori informazioni.
La porta 80 sembra essere già in uso.

Questo ti mostrerà quale comando sta utilizzando la porta 80
COMANDO  PID     UTENTE   FD   TIPO DISPOSITIVO DIMENSIONE/OFF NODE NOME
nginx    958     root    8u  IPv4  20899      0t0  TCP *:http (ASCOLTA)
nginx    958     root    9u  IPv6  20901      0t0  TCP *:http (ASCOLTA)
nginx   3368 www-data    8u  IPv4  20899      0t0  TCP *:http (ASCOLTA)
nginx   3368 www-data    9u  IPv6  20901      0t0  TCP *:http (ASCOLTA)

Se stai cercando di eseguire Discourse contemporaneamente a un altro server
web come Apache o nginx, dovrai associarlo a una porta diversa

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

Se stai riconfigurando un Discourse già configurato, usa 

./launcher stop app

per fermare Discourse prima di riconfigurarlo e riprovare.
root@localhost:/var/discourse# ./launcher stop app

ATTENZIONE: Stiamo per iniziare il download dell'immagine base di Discourse
Questo processo potrebbe richiedere da alcuni minuti a un'ora, a seconda della velocità della tua rete

Si prega di essere pazienti

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

ATTENZIONE: Stiamo per iniziare il download dell'immagine base di Discourse
Questo processo potrebbe richiedere da alcuni minuti a un'ora, a seconda della velocità della tua rete

Si prega di essere pazienti

2.0.20201221-2020: Pulling from discourse/base
6ec7b7d162b2: Pull complete 
488a5181297e: Pull complete 
Digest: sha256:e181dd9046cc293b10c5b29bbc21c5aa8b939ba5f0c500da4a9e952ed0b5195d
Stato: Immagine aggiornata scaricata per discourse/base:2.0.20201221-2020
docker.io/discourse/base:2.0.20201221-2020
File di configurazione non trovato, assicurati che containers/app.yml esista

ls: impossibile accedere a '*.yml': File o directory non esistente
Configurazioni disponibili ( )

Come indicato, non è possibile utilizzare la configurazione di Discourse se è in esecuzione qualcosa sulla porta 80 o 443.

Sì, funziona. Come posso cambiare la porta Nginx per Discourse? Ho installato Ghost sul mio server. Perché non posso usarlo sulla porta 80 e 443?