** impossibile avviare **

Ho provato a installare Discourse, ma ricevo un errore FAILED TO BOOTSTRAP.
Ecco il log:

ENTER per continuare, 'n' per riprovare, Ctrl+C per uscire:
Attivazione di Let's Encrypt
web.ssl.template.yml abilitato
letsencrypt.ssl.template.yml abilitato

File di configurazione in  aggiornato con successo!

Aggiornamenti completati. Ricostruzione tra 5 secondi.
Creazione dell'app
Verifica che il launcher sia aggiornato
Recupero di origin
Il launcher è aggiornato
cd /pups && git pull && /pups/bin/pups --stdin
Already up to date.
I, [2020-07-24T18:55:58.464935 #1]  INFO -- : Caricamento --stdin
I, [2020-07-24T18:55:58.473367 #1]  INFO -- : > locale-gen $LANG && update-locale
I, [2020-07-24T18:55:58.506619 #1]  INFO -- : Generazione delle localizzazioni (potrebbe richiedere del tempo)...
Generazione completata.

I, [2020-07-24T18:55:58.506995 #1]  INFO -- : > mkdir -p /shared/postgres_run
I, [2020-07-24T18:55:58.509890 #1]  INFO -- :
I, [2020-07-24T18:55:58.510432 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2020-07-24T18:55:58.512373 #1]  INFO -- :
I, [2020-07-24T18:55:58.512886 #1]  INFO -- : > chmod 775 /shared/postgres_run
I, [2020-07-24T18:55:58.515262 #1]  INFO -- :
I, [2020-07-24T18:55:58.515771 #1]  INFO -- : > rm -fr /var/run/postgresql
I, [2020-07-24T18:55:58.517798 #1]  INFO -- :
I, [2020-07-24T18:55:58.518308 #1]  INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2020-07-24T18:55:58.520717 #1]  INFO -- :
I, [2020-07-24T18:55:58.521218 #1]  INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
2020/07/24 18:55:58 socat[26] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): No such file or directory
I, [2020-07-24T18:55:58.532831 #1]  INFO -- :
I, [2020-07-24T18:55:58.533118 #1]  INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2020-07-24T18:55:58.535580 #1]  INFO -- :
I, [2020-07-24T18:55:58.535885 #1]  INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2020-07-24T18:55:58.538318 #1]  INFO -- :
I, [2020-07-24T18:55:58.538610 #1]  INFO -- : > mkdir -p /shared/postgres_run/12-main.pg_stat_tmp
I, [2020-07-24T18:55:58.540691 #1]  INFO -- :
I, [2020-07-24T18:55:58.541137 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run/12-main.pg_stat_tmp
I, [2020-07-24T18:55:58.542920 #1]  INFO -- :
I, [2020-07-24T18:55:58.547145 #1]  INFO -- : File > /etc/service/postgres/run  chmod: +x  chown:
I, [2020-07-24T18:55:58.551140 #1]  INFO -- : File > /etc/service/postgres/log/run  chmod: +x  chown:
I, [2020-07-24T18:55:58.555034 #1]  INFO -- : File > /etc/runit/3.d/99-postgres  chmod: +x  chown:
I, [2020-07-24T18:55:58.558937 #1]  INFO -- : File > /root/upgrade_postgres  chmod: +x  chown:
I, [2020-07-24T18:55:58.559391 #1]  INFO -- : > chown -R root /var/lib/postgresql/12/main
I, [2020-07-24T18:56:05.381806 #1]  INFO -- :
I, [2020-07-24T18:56:05.382562 #1]  INFO -- : > [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/12/bin/initdb -D /shared/postgres_data || exit 0
I, [2020-07-24T18:56:05.385503 #1]  INFO -- :
I, [2020-07-24T18:56:05.385920 #1]  INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2020-07-24T18:56:05.394083 #1]  INFO -- :
I, [2020-07-24T18:56:05.394491 #1]  INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2020-07-24T18:56:05.396516 #1]  INFO -- :
I, [2020-07-24T18:56:05.396943 #1]  INFO -- : > /root/upgrade_postgres
I, [2020-07-24T18:56:05.403490 #1]  INFO -- :
I, [2020-07-24T18:56:05.403830 #1]  INFO -- : > rm /root/upgrade_postgres
I, [2020-07-24T18:56:05.405807 #1]  INFO -- :
I, [2020-07-24T18:56:05.406414 #1]  INFO -- : Sostituzione di data_directory = '/var/lib/postgresql/12/main' con data_directory = '/shared/postgres_data' in /etc/postgresql/12/main/postgresql.conf
I, [2020-07-24T18:56:05.407666 #1]  INFO -- : Sostituzione di (?-mix:#?listen_addresses *=.*) con listen_addresses = '*' in /etc/postgresql/12/main/postgresql.conf
I, [2020-07-24T18:56:05.408137 #1]  INFO -- : Sostituzione di (?-mix:#?synchronous_commit *=.*) con synchronous_commit = $db_synchronous_commit in /etc/postgresql/12/main/postgresql.conf
I, [2020-07-24T18:56:05.408917 #1]  INFO -- : Sostituzione di (?-mix:#?shared_buffers *=.*) con shared_buffers = $db_shared_buffers in /etc/postgresql/12/main/postgresql.conf
I, [2020-07-24T18:56:05.409490 #1]  INFO -- : Sostituzione di (?-mix:#?work_mem *=.*) con work_mem = $db_work_mem in /etc/postgresql/12/main/postgresql.conf
I, [2020-07-24T18:56:05.410066 #1]  INFO -- : Sostituzione di (?-mix:#?default_text_search_config *=.*) con default_text_search_config = '$db_default_text_search_config' in /etc/postgresql/12/main/postgresql.conf
I, [2020-07-24T18:56:05.410701 #1]  INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2020-07-24T18:56:05.414314 #1]  INFO -- :
I, [2020-07-24T18:56:05.414961 #1]  INFO -- : Sostituzione di (?-mix:#?checkpoint_segments *=.*) con checkpoint_segments = $db_checkpoint_segments in /etc/postgresql/12/main/postgresql.conf
I, [2020-07-24T18:56:05.415521 #1]  INFO -- : Sostituzione di (?-mix:#?logging_collector *=.*) con logging_collector = $db_logging_collector in /etc/postgresql/12/main/postgresql.conf
I, [2020-07-24T18:56:05.416016 #1]  INFO -- : Sostituzione di (?-mix:#?log_min_duration_statement *=.*) con log_min_duration_statement = $db_log_min_duration_statement in /etc/postgresql/12/main/postgresql.conf
I, [2020-07-24T18:56:05.416731 #1]  INFO -- : Sostituzione di (?-mix:^#local +replication +postgres +peer$) con local replication postgres  peer in /etc/postgresql/12/main/pg_hba.conf
I, [2020-07-24T18:56:05.417184 #1]  INFO -- : Sostituzione di (?-mix:^host.*all.*all.*127.*$) con host all all 0.0.0.0/0 md5 in /etc/postgresql/12/main/pg_hba.conf
I, [2020-07-24T18:56:05.417700 #1]  INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/12/bin/postmaster -D /etc/postgresql/12/main
I, [2020-07-24T18:56:05.418973 #1]  INFO -- : > sleep 5
2020-07-24 18:56:05.434 GMT [49] LOG:  0 8kB è al di fuori dell'intervallo valido per il parametro "shared_buffers" (16 .. 1073741823)
2020-07-24 18:56:05.435 UTC [49] FATAL:  il file di configurazione "/etc/postgresql/12/main/postgresql.conf" contiene errori
I, [2020-07-24T18:56:10.424189 #1]  INFO -- :
I, [2020-07-24T18:56:10.424518 #1]  INFO -- : > su postgres -c 'createdb discourse' || true
createdb: errore: impossibile connettersi al database template1: impossibile connettersi al server: No such file or directory
        Il server è in esecuzione localmente e accetta
        connessioni sul socket Unix "/var/run/postgresql/.s.PGSQL.5432"?
I, [2020-07-24T18:56:10.470398 #1]  INFO -- :
I, [2020-07-24T18:56:10.470767 #1]  INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
psql: errore: impossibile connettersi al server: impossibile connettersi al server: No such file or directory
        Il server è in esecuzione localmente e accetta
        connessioni sul socket Unix "/var/run/postgresql/.s.PGSQL.5432"?
I, [2020-07-24T18:56:10.520451 #1]  INFO -- :
I, [2020-07-24T18:56:10.520909 #1]  INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
psql: errore: impossibile connettersi al server: impossibile connettersi al server: No such file or directory
        Il server è in esecuzione localmente e accetta
        connessioni sul socket Unix "/var/run/postgresql/.s.PGSQL.5432"?
I, [2020-07-24T18:56:10.569147 #1]  INFO -- :
I, [2020-07-24T18:56:10.569513 #1]  INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
psql: errore: impossibile connettersi al server: impossibile connettersi al server: No such file or directory
        Il server è in esecuzione localmente e accetta
        connessioni sul socket Unix "/var/run/postgresql/.s.PGSQL.5432"?
I, [2020-07-24T18:56:10.624778 #1]  INFO -- :
I, [2020-07-24T18:56:10.625306 #1]  INFO -- : Terminazione dei processi asincroni


FAILED
--------------------
Pups::ExecError: su postgres -c 'psql discourse -c "alter schema public owner to discourse;"' fallito con return #<Process::Status: pid 75 exit 2>
Posizione dell'errore: /pups/lib/pups/exec_command.rb:112:in `spawn'
exec fallito con i parametri "su postgres -c 'psql $db_name -c \"alter schema public owner to $db_user;\"'"
88ef1f69c68375f34f7ed80b11cbe2b1fac59a79a226118cb3205f0dc0ea5276
** FAILED TO BOOTSTRAP ** scorri verso l'alto e cerca eventuali messaggi di errore precedenti, potrebbero essercene più di uno.
./discourse-doctor potrebbe aiutare a diagnosticare il problema.

Sembra che l’errore principale sia l’impossibilità di connettersi al server, ma non lo capisco del tutto…
su postgres -c 'psql discourse -c "alter schema public owner to discourse;"' psql: errore: impossibile connettersi al server: impossibile connettersi al server: No such file or directory Il server è in esecuzione localmente e accetta connessioni sul socket Unix "/var/run/postgresql/.s.PGSQL.5432"?

Qualcuno può aiutarmi?
Grazie

Quanta memoria RAM hai su questo server?

1 GB.

Hmm, questa cosa è davvero strana.

Qui calcoliamo la dimensione di db_shared_buffers:

Non riesco a capire come si possa arrivare a soli 8 kB seguendo questa procedura.

Puoi controllare il valore nel tuo file app.yml?

Certo, dove si trova app.yml o quale comando devo eseguire per visualizzarlo (cat)?

/var/discourse/containers/app.yml

Ho trovato nano più facile da usare.

Grazie.

@Falco, @IAmGav, ecco il contenuto di app.yml:

## questo è il template del container Docker Discourse tutto-in-uno, autonomo
##
## Dopo aver apportato modifiche a questo file, DEVI eseguire la ricompilazione
## /var/discourse/launcher rebuild app
##
## FAI *MOLTA* ATTENZIONE DURANTE LA MODIFICA!
## I FILE YAML SONO SUPER SUPER SENSIBILI A ERRORI DI SPAZIATURA O ALLINEAMENTO!
## visita http://www.yamllint.com/ per convalidare questo file se necessario

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ratelimited.template.yml"
## Scomenta queste due righe se desideri aggiungere Lets Encrypt (https)
  - "templates/web.ssl.template.yml"
  - "templates/web.letsencrypt.ssl.template.yml"

## quali porte TCP/IP deve esporre questo container?
## Se vuoi che Discourse condivida una porta con un altro server web come Apache o nginx,
## vedi https://meta.discourse.org/t/17247 per i dettagli
expose:
  - "80:80"   # http
  - "443:443" # https

params:
  db_default_text_search_config: "pg_catalog.english"

  ## Imposta db_shared_buffers al massimo al 25% della memoria totale.
  ## verrà impostato automaticamente da bootstrap in base alla RAM rilevata, oppure puoi sovrascriverlo
  db_shared_buffers: "0MB"

  ## può migliorare le prestazioni di ordinamento, ma aggiunge l'uso della memoria per connessione
  #db_work_mem: "40MB"

  ## Quale revisione Git dovrebbe utilizzare questo container? (predefinito: tests-passed)
  #version: tests-passed

env:
  LANG: en_US.UTF-8
  # DISCOURSE_DEFAULT_LOCALE: en

  ## Quante richieste web contemporanee sono supportate? Dipende dalla memoria e dai core della CPU.
  ## verrà impostato automaticamente da bootstrap in base alle CPU rilevate, oppure puoi sovrascriverlo
  UNICORN_WORKERS: 0

  ## TODO: Il nome di dominio a cui risponderà questa istanza di Discourse
  ## Obbligatorio. Discourse non funzionerà con un semplice numero IP.
  DISCOURSE_HOSTNAME: community.kodularlessons.net

  ## Scomenta se vuoi che il container venga avviato con lo stesso
  ## nome host (opzione -h) specificato sopra (predefinito "$hostname-$config")
  #DOCKER_USE_HOSTNAME: true

  ## TODO: Elenco di email separate da virgola che diventeranno amministratori e sviluppatori
  ## al primo esempio di registrazione 'user1@example.com,user2@example.com'
  DISCOURSE_DEVELOPER_EMAILS: '******s@gmail.com'

  ## TODO: Il server di posta SMTP utilizzato per validare nuovi account e inviare notifiche
  ## INDIRIZZO SMTP, nome utente e password sono obbligatori
  ## ATTENZIONE: il carattere '#' nella password SMTP può causare problemi!
  DISCOURSE_SMTP_ADDRESS: mboxhosting.com
  DISCOURSE_SMTP_PORT: 993
  DISCOURSE_SMTP_USER_NAME: no-reply@kodularlessons.net
  DISCOURSE_SMTP_PASSWORD: "*****************"
  #DISCOURSE_SMTP_ENABLE_START_TLS: true           # (opzionale, predefinito true)

  ## Se hai aggiunto il template Lets Encrypt, scomenta qui sotto per ottenere un certificato SSL gratuito
  LETSENCRYPT_ACCOUNT_EMAIL: me@example.com

  ## L'indirizzo CDN http o https per questa istanza di Discourse (configurato per il pull)
  ## vedi https://meta.discourse.org/t/14857 per i dettagli
  #DISCOURSE_CDN_URL: https://discourse-cdn.example.com

## Il container Docker è senza stato; tutti i dati sono archiviati in /shared
volumes:
  - volume:
      host: /var/discourse/shared/standalone
      guest: /shared
  - volume:
      host: /var/discourse/shared/standalone/log/var-log
      guest: /var/log

## I plugin vanno qui
## vedi https://meta.discourse.org/t/19157 per i dettagli
hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git

## Qualsiasi comando personalizzato da eseguire dopo la costruzione
run:
  - exec: echo "Inizio dei comandi personalizzati"
  ## Se vuoi impostare l'indirizzo email 'From' per la tua prima registrazione, scomenta e modifica:
  ## Dopo aver ottenuto la prima email di registrazione, ricommenta la riga. Deve essere eseguita solo una volta.
  #- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.                                                                                               org'"
  - exec: echo "Fine dei comandi personalizzati"

Nota: Ho censurato manualmente le informazioni private.

questo non dovrebbe essere zero

cambialo in

db_shared_buffers: “128MB”

Grazie, dammi un secondo mentre lo cambio.

Il mio post è scomparso perché è finito nel filtro antispam, comunque incollerò il nuovo log su Pastebin.

dopo aver apportato modifiche al file yml, esegui questo comando.

./launcher rebuild app

Grazie, restituisce anche un errore di avvio non riuscito, vedi il log:

Sta riscontrando alcuni problemi con shared_buffers e PostgreSQL.

Cosa altro è in esecuzione su quell’istanza?

Null’altro è in esecuzione sulla VM (credo)…
L’ho acquistata da Azure