Ho sperimentato con l’immagine Docker discourse/discourse_dev (su un portatile Windows 11) e ho notato un piccolo punto di attrito nel flusso di lavoro dello sviluppatore.
Quando si esegue Discourse in modalità di sviluppo senza configurare l’email in uscita:
È possibile accedere alla pagina di registrazione/login tramite Ember CLI (localhost:4200).
È possibile creare un account utente.
Ma l’accesso è bloccato perché è richiesta la conferma dell’email.
La soluzione alternativa sembra essere l’attivazione manuale dell’account nella console Rails, ad esempio:
Esiste un flusso di lavoro per sviluppatori raccomandato per avviare il primo account amministratore quando l’email non è configurata?
Ad esempio:
Gli sviluppatori dovrebbero normalmente configurare SMTP anche in sviluppo?
Esiste un’attività di supporto per questo (rake admin:create ecc.)?
Avrebbe senso che il container di sviluppo consentisse il login del primo utente senza conferma via email?
Chiedo principalmente per documentare un processo di configurazione più agevole per i nuovi sviluppatori che sperimentano con il container di sviluppo.
Grazie! Questo risolve il problema: non mi ero imbattuto in bin/rails admin:create mentre sperimentavo con il container discourse_dev.
Ciò che inizialmente mi ha confuso è stato il fatto che il normale flusso di registrazione dell’interfaccia utente funziona fino al punto di creazione dell’account, ma l’accesso viene poi bloccato dalla conferma dell’email se SMTP non è configurato.
Per chi sta solo esplorando l’ambiente di sviluppo, questo fa sembrare che il flusso di accesso sia interrotto, a meno che non si conosca il task di aiuto.
Potrebbe essere utile menzionare esplicitamente bin/rails admin:create nella documentazione di configurazione per lo sviluppo per il container di sviluppo Docker, poiché i nuovi contributori spesso non hanno SMTP configurato.
Se hai bisogno di accedere alle email nel tuo ambiente di sviluppo, puoi anche eseguire mailhog.
Tutto quello che devi fare è aprire una nuova riga di comando nella tua directory di Discourse ed eseguire mailhog. Quindi, se visiti localhost:8025, puoi vedere le email che normalmente verrebbero inviate, senza bisogno di configurare nulla.
Penso che la distinzione sia che il percorso documentato d/boot_dev --init crea già l’utente amministratore, quindi la mia confusione è nata dall’esperimentare nell’ambiente di sviluppo piuttosto che seguire quel flusso di inizializzazione esatto dall’inizio alla fine.
Il consiglio su MailHog è utile anch’esso. Non avevo realizzato che la configurazione di sviluppo potesse catturare localmente le email di conferma tramite mailhog e localhost:8025, il che spiega il flusso di lavoro previsto nel caso qualcuno segua il percorso normale di registrazione/conferma email.
Quindi il modello mentale più chiaro sembra essere:
Per la configurazione Docker di sviluppo standard, usa d/boot_dev --init e crea l’account amministratore quando richiesto.
Se stai testando i flussi di email/registrazione, avvia mailhog e visualizza i messaggi su localhost:8025.
Se necessario separatamente, bin/rails admin:create è l’utilità manuale per creare un account amministratore.
Questo chiarisce la confusione – grazie.
Una piccola domanda separata mentre esploro l’interfaccia di sviluppo: a cosa servono i piccoli pulsanti con icona nella barra degli strumenti verticale? Li vedo nell’interfaccia, ma non sono immediatamente sicuro se si tratti di controlli normali per gli utenti, scorciatoie per gli amministratori o strumenti di sviluppo/debug.
Questa è la barra degli strumenti per sviluppatori. Puoi attivare/disattivare la modalità sicura, la localizzazione dettagliata e le modifiche imminenti. Puoi anche visualizzare i punti di connessione e i blocchi dei plugin.