Fai attenzione a non dare per scontato che l’interfaccia web per gli aggiornamenti funzioni sempre. L’aggiornamento dalla pagina web non funziona sempre. Alcuni aggiornamenti (come un aggiornamento molto recente della versione del database) richiederanno la ricostruzione dalla riga di comando. Ciò significa accedere al server tramite SSH e utilizzare la riga di comando per ricostruire.
A differenza di molti amministratori, di solito uso l’interfaccia web per aggiornare, ma tengo aperta una shell per eseguire l’aggiornamento manualmente se necessario.
Così ho seguito l’intero processo, con l’aiuto del bot di Discourse, che mi ha facilitato un po’ le cose, dato che sembra che il topic originale “Move from standalone container to separate web and data containers” sia stato scritto 10 anni fa e non volevo fare confusione.
Dopo qualche domanda e molte note prese, credo di capire un po’ meglio le cose. La mia installazione è in esecuzione, quindi immagino che tutto sia stato configurato correttamente…?
Il bot mi ha detto che quando voglio aggiornare qualcosa che richiede effettivamente l’accesso SSH, questa dovrebbe essere la sequenza:
# questo richiederà circa 20 minuti (la prima volta); di solito 5-15 minuti dopo
# (NON il tempo esatto del primo bootstrap — docker memorizza i layer nella cache nelle ricostruzioni successive)
sudo ./launcher bootstrap web_only
# dopo il bootstrap riuscito, esegui:
sudo ./launcher destroy web_only && sudo ./launcher start web_only
# occasionalmente, controlla lo spazio su disco:
df -h
# e se lo spazio su disco sta per finire a causa di immagini vecchie non utilizzate:
sudo ./launcher cleanup
e sarò pronto per partire.
Quell’aggiornamento “una volta all’anno” è un po’ più complesso, ma ho preso anche note su quello, devo solo organizzare quelle note, dato che non le userò adesso.
Il flusso di lavoro sopra è corretto?
E grazie a tutti per aver condiviso i vostri feedback!
Posso chiedere alla “regola stupida” di tenere in considerazione questo aspetto e di sapere quando utilizzare ciascuna opzione di aggiornamento disponibile?
Non sono un esperto, altri sono molto più esperti in queste materie, ma… dall’esperienza che ho fatto mai dare per scontato che l’interfaccia web abbia successo, siate sempre pronti a ricostruire da riga di comando. Il recente aggiornamento da PostgreSQL 15 a 18 descritto qui è stato una passeggiata, sapete che non potete farcela con l’aggiornamento tramite interfaccia web.
Non è così difficile, considerate l’aggiornamento tramite interfaccia web una comodità, se funziona… ottimo, ma siate pronti se non funziona. Almeno quando non funziona, vi dà una spiegazione informativa su cosa è successo e su cosa fare per risolvere. Molti amministratori di Discourse professionisti qui vi direbbero di non perdere nemmeno tempo a provarci. Il mio forum è piccolo e a basso volume, posso permettermi di rischiare, voi forse non avete quel lusso.
ultimamente non posto molto qui, ma se hai bisogno di aiuto per configurare un dual container o hai domande, sentiti libero di mandarmi un messaggio privato. sto gestendo 2 forum separati con dual container dietro cloudflare cdn con storage di oggetti r2 compatibile con s3. sì, è un po’ più complesso rispetto al single container, ma non è così difficile come molti pensano. è facilissimo da mantenere e puoi usare uno script bash per rendere ancora più semplice l’aggiornamento.