Varie domande sull'installazione multisito

Mi stavo chiedendo cosa fa il valore db_id: 2 nella configurazione suggerita sopra?

Inoltre, qual è la procedura per aggiungere un nuovo sito all’impostazione multisito esistente? È solo:

  • Aggiornare yaml
  • ./launcher bootstrap multisite [1]
  • ./launcher start multisite

Mi stavo chiedendo se ci fosse un modo per evitare di influire su tutti gli altri siti esistenti eseguendo un bootstrap o una ricostruzione completa e in qualche modo aggiungere solo il database aggiuntivo necessario?


  1. Ho provato prima ./launcher rebuild multisite, ma sembra fallire. ↩︎

Penso che l’ID del database non sia più necessario.

Puoi semplicemente modificare il file multisito con il nuovo sito ed eseguire

sv restart unicorn

E quindi migrare il database.

Sei un salvavita!

Mi mancava questo comando per riavviare (ho anche provato sv reload unicorn ma in qualche modo non è bastato).

In termini di creazione del database, esiste già un modo per farlo automaticamente? Sarebbe bello avere rake db:create[mynewdbname]. Altrimenti, posso scrivere un breve script di shell.

Al momento, creo manualmente (creo il db e imposto i permessi) e poi eseguo RAILS_DB=newdb rake db:migrate per popolarlo.

E solo per verificare se sto facendo qualcosa di stupido:

  • Al momento, sto modificando il file multisite all’interno di docker (/var/www/discourse/config/multisite.yml)
  • Creando il db manualmente
  • Eseguendo rake db:migrate
  • sv restart unicorn
  • Devo anche modificare il file yaml al di fuori di docker in modo che la configurazione multisite sia sincronizzata in caso di future ricostruzioni o aggiornamenti.

Sto facendo stupidaggini modificando la configurazione multisite in 2 posti diversi quando c’è già un modo per modificarla in un posto e spingere le modifiche?

È possibile ripulire un po’ questa documentazione e fornire maggiori indicazioni? Innanzitutto, sono estremamente nuovo a Docker e, sebbene abbia esperienza con server Linux, non sono un professionista. Sono un vecchio schooler che ama i miei cron job e gli script di shell e cose strane come quelle con Apache multisite, ecc. Ma questo è un po’ più complesso e utilizza un linguaggio di programmazione diverso da quello a cui sono abituato… Forse anche un video dimostrativo di qualche tipo? Sarebbe bello se discourse fosse semplicemente pronto per il multisite e in quel modo tutto ciò che dovresti fare è modificare alcuni file, ecc.

Incolla quella strofa di testo e modificala a tuo piacimento.

Avrai quindi bisogno di un reverse proxy o di seguire Configura Let’s Encrypt con più domini/reindirizzamenti per ottenere certificati per tutti i domini.

Vedi anche Configurazione Multisito con Let’s Encrypt e senza Reverse Proxy. Ma questo deve essere aggiornato per includere un’altra riga richiesta che puoi ottenere dal link precedente. Avevo intenzione di aggiornarlo ma non ci sono riuscito.

Se sto facendo il multisito, a cosa dovrei puntare il mio dominio? Allo stesso IP del server (che ospita un altro forum)?

Sì, punta tutti i domini allo stesso IP del server.
Configura un proxy inverso con il server Nginx o Caddy.
Caddy è il migliore in quanto fornisce certificati SSL automatici gratuiti a tutti i tuoi domini.

Ho seguito questo tutorial per configurare con successo un’installazione multisito con Docker. Di recente ho riscontrato un errore durante il tentativo di aggiornamento e credo che la riga:

    - exec: cd /var/www/discourse && sudo -E -u discourse bundle exec rake multisite:migrate

Dovrebbe essere modificata in:

    - exec: cd /var/www/discourse && sudo -H -E -u discourse bundle exec rake multisite:migrate

Qualcuno può confermare/modificare il tutorial?

Sì. Mi sono imbattuto anche io in questo. Vuoi apportare quella modifica altrimenti il tuo bootstrap fallirà.