Esempio di utilizzo dei comandi CLI
Questo esempio mostra come impostare valori condivisi, specifici del sistema e sensibili nel sistema di sviluppo, quindi distribuire tali valori nel sistema di produzione.
Questa operazione viene eseguita utilizzando una combinazione di configurazioni condivise, il file config.php
e il comando CLI di Commerce.
In questo esempio vengono utilizzate le impostazioni di configurazione seguenti:
-
Numero Iva e Nome archivio per le impostazioni di configurazione condivise.
Sono disponibili in Archivi > Impostazioni > Configurazione > Generale > Generale.
-
Invia e-mail a per il valore di configurazione sensibile.
Si trova in Archivi > Impostazioni > Configurazione > Generale > Contatti.
-
Dominio e-mail predefinito per il valore di configurazione specifico del sistema.
Si trova in Archivi > Impostazioni > Configurazione > Clienti > Configurazione cliente > Crea nuove opzioni account.
È possibile utilizzare la stessa procedura illustrata in questo esempio per configurare le impostazioni nei seguenti riferimenti:
Prima di iniziare
Prima di iniziare, configurare le autorizzazioni e la proprietà del file system come descritto in Prerequisiti per i sistemi di sviluppo, compilazione e produzione.
Presupposti
Questo argomento fornisce un esempio di modifica della configurazione del sistema di produzione. Se lo desideri, puoi scegliere diverse opzioni di configurazione.
Ai fini del presente esempio, si assume quanto segue:
- Usa il controllo del codice sorgente Git
- Il sistema di sviluppo è disponibile in un archivio remoto Git denominato
mconfig
- Il ramo di lavoro Git è denominato
m2.2_deploy
Passaggio 1: impostare la configurazione nel sistema di sviluppo
Per impostare le impostazioni internazionali e le unità di misura predefinite nel sistema di sviluppo:
-
Accedi all’amministratore.
-
Fai clic su Archivi > Impostazioni > Configurazione > Generale > Generale.
-
Se sono disponibili più siti Web, utilizzare l'elenco Visualizzazione store nell'angolo superiore sinistro per passare a un sito Web diverso, come illustrato nella figura seguente.
-
Nel riquadro destro espandere Informazioni archivio.
-
Se necessario, deselezionare la casella di controllo Usa predefinito accanto ai campi Partita IVA e Nome archivio.
-
Immettere un numero nel campo, ad esempio
12345
. -
Nel campo Nome archivio, immetti un valore (ad esempio
My Store
). -
Fai clic su Salva configurazione.
-
Nel menu di navigazione a sinistra, in Generale, fare clic su Contatti.
-
Nel riquadro di destra espandere Opzioni e-mail.
-
Se necessario, deselezionare la casella di controllo Usa predefinito accanto al campo Invia e-mail a.
-
Immetti un indirizzo e-mail nel campo.
-
Fai clic su Salva configurazione.
-
Utilizzare l'elenco Visualizzazione archivio per selezionare la Configurazione predefinita, come illustrato nella figura seguente.
-
Nel riquadro sinistro fare clic su Clienti > Configurazione cliente.
-
Nel riquadro di destra espandere Crea nuove opzioni account.
-
Se necessario, deselezionare la casella di controllo Usa valore di sistema accanto al campo Dominio e-mail predefinito.
-
Immetti un nome di dominio nel campo.
-
Fai clic su Salva configurazione.
-
Se richiesto, svuotare la cache.
Passaggio 2: aggiornare la configurazione
Dopo aver modificato la configurazione nell’amministratore, scrivi la configurazione condivisa in un file come seguendo la procedura riportata di seguito:
Per aggiornare la configurazione:
-
Accedi al sistema di sviluppo come proprietario del file system o passa a tale proprietario.
-
Passare alla radice dell'applicazione ed eseguire il comando dump.
code language-bash cd <Magento root dir> php bin/magento app:config:dump
Se ad esempio Commerce è installato in
/var/www/html/magento2
, immettere:code language-bash cd /var/www/html/magento2 php bin/magento app:config:dump
-
Conferma che
app/etc/config.php
è stato aggiornato.code language-bash git status
Risposta di esempio:
code language-none On branch m2.2_deploy Changed but not updated: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: app/etc/config.php
note warning WARNING non inviare le modifiche alle directory generated
,pub/media
opub/static
al controllo del codice sorgente. Puoi generare questi file sul sistema di build. Il sistema di sviluppo ha probabilmente codice, temi e così via, che non sono pronti per essere utilizzati nel sistema di produzione. -
Archivia le modifiche apportate a
app/etc/config.php
solo nel controllo del codice sorgente.code language-bash git add app/etc/config.php && git commit -m "Updated shared configuration" && git push mconfig m2.2_deploy
Anche se app/etc/env.php
(la configurazione specifica del sistema) è stata aggiornata, non archiviarla nel controllo del codice sorgente.
Le stesse impostazioni di configurazione verranno create nel sistema di produzione più avanti in questa procedura.
Passaggio 3: aggiornare il sistema di generazione e generare i file
Dopo aver confermato le modifiche apportate alla configurazione condivisa nel controllo del codice sorgente, è possibile richiamarle nel sistema di build, compilare il codice e generare file statici.
Per aggiornare il sistema di compilazione:
-
Accedi al sistema di build come proprietario del file system.
-
Passare alla directory radice dell'applicazione.
code language-bash cd <Magento root dir>
-
Estrarre le modifiche a
app/etc/config.php
dal controllo del codice sorgente.code language-bash git pull mconfig m2.2_deploy
-
Compila il codice.
code language-bash bin/magento setup:di:compile
-
Dopo la compilazione del codice, generare i file di visualizzazione statica.
code language-bash bin/magento setup:static-content:deploy -f
-
Controllare le modifiche apportate al controllo del codice sorgente.
code language-bash git add -A && git commit -m "Updated files on build system" && git push mconfig m2.2_deploy
Passaggio 4: aggiornare il sistema di produzione
L’ultimo passaggio del processo consiste nell’aggiornare il sistema di produzione. È necessario eseguire questa operazione in due parti:
- Aggiornare le impostazioni sensibili e specifiche del sistema
- Aggiornare le impostazioni condivise
Aggiornare le impostazioni sensibili e specifiche del sistema
Per impostare le impostazioni sensibili e specifiche del sistema utilizzando le variabili di ambiente, è necessario conoscere quanto segue:
-
Ambito per ogni impostazione
Se hai seguito le istruzioni del passaggio 1, l'ambito per Inviare e-mail a è sito Web e l'ambito per Dominio e-mail predefinito è globale (ovvero l'ambito di configurazione predefinito).
È necessario il codice del sito Web per impostare il valore di configurazione Invia e-mail a.
Per ulteriori informazioni sulla ricerca di questo valore, vedere: Utilizzare le variabili di ambiente per ignorare le impostazioni di configurazione.
-
Percorsi di configurazione per le impostazioni utilizzate in questo esempio:
table 0-row-2 1-row-2 2-row-2 Nome impostazione Percorso di configurazione Invia e-mail a contact/email/recipient_email
Dominio e-mail predefinito customer/create_account/email_domain
Per tutti i percorsi di configurazione sensibili e specifici del sistema, vedere: Riferimento percorsi di configurazione sensibili e specifici del sistema.
Impostare le variabili utilizzando i comandi CLI
Utilizzare i seguenti comandi CLI per impostare le impostazioni di configurazione specifiche del sistema e sensibili:
magento config:set
per le impostazioni specifiche del sistemamagento config:sensitive:set
per le impostazioni sensibili
Per impostare l'impostazione specifica del sistema Dominio e-mail predefinito, che si trova nell'ambito predefinito, utilizzare il comando seguente:
bin/magento config:set customer/create_account/email_domain <email domain>
Non è necessario utilizzare l'ambito nel comando perché è l'ambito predefinito.
Per impostare i valori per Invia e-mail a, è tuttavia necessario conoscere il tipo di ambito (website
) e il codice di ambito, che probabilmente è diverso in ogni sito.
Esempio:
bin/magento config:sensitive:set contact/email/recipient_email --scope=website --scope-code=<website code> <email address>
Aggiornare le impostazioni condivise
Questa sezione illustra come richiamare tutte le modifiche apportate ai sistemi di sviluppo e di creazione in un ambiente di produzione, che aggiorna le impostazioni di configurazione condivise (Nome store e Partita IVA).
Per aggiornare il sistema di produzione:
-
Accedi al sistema di produzione come proprietario del file system.
-
Passa alla directory principale dell’applicazione e abilita la modalità di manutenzione.
code language-bash cd <Magento root dir>
code language-bash bin/magento maintenance:enable
Per ulteriori opzioni, ad esempio la possibilità di impostare un indirizzo IP nella whitelist, vedere
magento maintenance:enable
. -
Arrestare i processi di lavoro in esecuzione impostando
cron_run
sufalse
inapp/etc/env.php
nel modo seguente:code language-php?start_inline=1 'cron_consumers_runner' => [ 'cron_run' => false ]
-
Aggiorna la configurazione.
code language-bash bin/magento app:config:import
-
Infine,
kill
qualsiasi processo consumer attivo.code language-bash kill <PID>
Dove
PID
è l'ID processo da terminare, ad esempio:code language-bash kill 1234
-
Estrarre il codice dal controllo del codice sorgente.
code language-bash git pull mconfig m2.2_deploy
-
Aggiorna la configurazione.
code language-bash bin/magento app:config:import
-
Pulire la cache.
code language-bash bin/magento cache:clean
-
Termina modalità di manutenzione.
code language-bash bin/magento maintenance:disable
Verificare le impostazioni di configurazione in Admin
Per verificare le impostazioni di configurazione:
-
Accedi all’amministratore del sistema di produzione.
-
Fai clic su Archivi > Impostazioni > Configurazione > Generale > Generale.
-
Utilizza l'elenco Visualizzazione archivio nell'angolo superiore sinistro per passare a un altro sito Web.
Le opzioni di configurazione condivise impostate nel sistema di sviluppo vengono visualizzate in modo simile alle seguenti.
note info INFO Il campo Nome archivio è modificabile nell'ambito del sito Web ma non è modificabile se si passa all'ambito Configurazione predefinita. Questo è il risultato di come si impostano le opzioni nel sistema di sviluppo. Il valore di Partita IVA non è modificabile nell'ambito del sito Web. -
Se non lo hai già fatto, passa all’ambito Configurazione predefinita.
-
Nel menu di navigazione a sinistra, in Generale, fare clic su Contatti.
Il campo Invia e-mail a non è modificabile, come illustrato nella figura seguente. Si tratta di un’impostazione sensibile.
-
Nel riquadro sinistro fare clic su Clienti > Configurazione cliente.
-
Nel riquadro di destra espandere Crea nuove opzioni account.
Il valore del campo Dominio e-mail predefinito viene visualizzato come segue. Si tratta di un’impostazione specifica del sistema.