Dopo aver sbattuto la testa per molte ore, è ora di chiedere aiuto.
Registro di debug:
https://privatebin.net/?b56249efe41b5599#8nt7yMQU2Hft4HysXSoZkxXQTYdR9MFv91qC9sbBgen
Dopo aver sbattuto la testa per molte ore, è ora di chiedere aiuto.
Registro di debug:
https://privatebin.net/?b56249efe41b5599#8nt7yMQU2Hft4HysXSoZkxXQTYdR9MFv91qC9sbBgen
Il tuo Droplet (o container Docker) sta riscontrando problemi di connettività con GitHub
fatal: unable to access ‘GitHub - discourse/discourse: A platform for community discussion. Free, open, simple.’: Could not resolve host: github.com
Potresti verificare se GitHub è accessibile?
Ah, significa che forse ho provato a ricostruire troppe volte in un breve periodo e il mio IP del server è stato messo in timeout?
Nessuno degli altri errori è di alcuna importanza?
Ho appena riprovato e sono ancora bloccato, quindi c’è qualcos’altro da provare o dovrei solo aspettare 24 ore e poi riprovare?
Potresti provare a fare un ping/curl di github.com e vedere se ottieni una risposta. Potrebbe trattarsi di un problema di firewall o di connettività piuttosto che di un limite di frequenza.
“Impossibile risolvere l’host” suggerisce un problema DNS, ovvero il tuo server non è in grado di trovare l’indirizzo IP per github.com.
==================== REBUILD LOG ====================
Rilevata architettura x86_64.
Verifica aggiornamento del launcher
Recupero origine
Launcher aggiornato
Questo mi suggerisce che il tuo host è in grado di risolvere e connettersi a github.com a meno che tu non abbia clonato il repository discourse_docker da qualche altra parte. Puoi confermarlo con i seguenti comandi per elencare il remoto del repository:
cd /var/discourse
git remote -v
che dovrebbe produrre:
origin https://github.com/discourse/discourse_docker.git (fetch)
origin https://github.com/discourse/discourse_docker.git (push)
Se questo è il caso, l’errore successivo che non riesce a risolvere github.com implicherebbe che il container docker non è in grado di risolverlo nonostante l’host sia in grado di farlo, suggerendo un problema con la connettività docker.
git remote -v ha effettivamente prodotto l’output desiderato. Come posso risolvere i problemi con Docker, o dovrei semplicemente reinstallarlo? Sono felice di farlo purché non perda dati. Dove esattamente Discourse memorizza il suo database e i file caricati (qualunque cosa accada dopo, vorrei eseguirne il backup manualmente)?
/var/discourse/shared/standalone è mappato a un volume nel container, tutti i dati persistenti sono archiviati lì.
docker network ls elencherà le reti docker, quello che vedo è la rete bridge predefinita e altre due reti. I container utilizzano la rete bridge predefinita a meno che non venga esplicitamente detto di utilizzare qualcos’altro.
Ho trovato alcune informazioni sulla rete bridge predefinita che non fornisce più connettività al mondo esterno. Sto ipotizzando, ma Ubuntu 22.04 potrebbe essere passato a una versione di Docker in cui ciò si applica, il che significa che il container Discourse dovrà essere configurato per utilizzare invece una bridge definita dall’utente.
Penso che tu possa semplicemente modificare /var/discourse/containers/app.yml e aggiungere questo in fondo, quindi ricostruire: (non l’ho testato, tuttavia)
networks:
default:
driver: bridge
/var/discourse/shared/standalone/backups/default sembra contenere backup compressi di tutte le parti importanti, il database e i caricamenti.
Grazie per le idee, ma non ha funzionato.
Dovrei semplicemente provare a reinstallare Docker, o se lo faccio, tanto vale eliminare tutto e fare un’installazione completamente nuova di Discourse (l’ho installato tramite Discourse | DigitalOcean Marketplace 1-Click App)?
Presumo che importare il file di backup sia semplice da fare nell’amministratore di Discourse?
L’installazione standard è l’unico modo ufficialmente supportato per l’installazione, ma puoi trovare informazioni sul ripristino di un backup qui sotto. Dovrebbe essere lo stesso processo per un’installazione con 1-Click di DO.
Sembra che l’app 1-Click utilizzi esplicitamente Ubuntu 20.04, quindi finché ciò non cambierà, probabilmente vale la pena rimanere su 20.04. Continuerà a ricevere aggiornamenti di correzione di bug/sicurezza per altri tre anni, quindi non c’è fretta di passare a 22.04.
Potresti comunque provare a reinstallare prima Docker. Forse il problema è emerso dall’aggiornamento e, in teoria, la rete Docker rimossa e poi riaggiunta dall’installazione potrebbe risolverlo.
Ho finito per ricostruire il droplet con una copia pulita di Ubuntu 22.04, reinstallando Discourse manualmente (nel modo standard) e poi importando semplicemente il backup. È stato veloce e facile e vorrei averlo fatto fin dall’inizio.
Grazie per tutto l’aiuto!
È utile sapere che non si tratta di un problema generale con l’installazione su 22.04.
Ho eseguito alcuni do-release-upgrades da 20.04 a 22.04 questo fine settimana e posso confermare che ora funzionano tutti correttamente senza dover reinstallare Docker. Qualcosa deve essere stato corretto nei repository di Ubuntu nelle ultime settimane.
Ora dovrebbe andare bene eseguire aggiornamenti in questo modo senza problemi.