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 config.php
file e il comando Commerce CLI.
In questo esempio vengono utilizzate le impostazioni di configurazione seguenti:
-
Partita Iva e Nome store per le impostazioni di configurazione condivisa.
Questi si trovano in Negozi > Impostazioni > Configurazione > Generale > Generale.
-
Invia e-mail a per il valore di configurazione sensibile.
Questo si trova in Negozi > Impostazioni > Configurazione > Generale > Contatti.
-
Dominio e-mail predefinito per il valore di configurazione specifico del sistema.
Questo si trova in Negozi > 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, imposta le autorizzazioni e la proprietà del file system come descritto in Prerequisito per i sistemi di sviluppo, generazione 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.
-
Clic Negozi > Impostazioni > Configurazione > Generale > Generale.
-
Se sono disponibili più siti Web, utilizzare Visualizzazione store nell’angolo in alto a sinistra per passare a un sito web diverso, come illustrato nella figura seguente.
-
Nel riquadro di destra, espandere Informazioni sul negozio.
-
Se necessario, cancellare il Usa predefinito accanto alla casella di controllo Partita IVA e Nome store campi.
-
Immettere un numero nel campo, ad esempio
12345
). -
In Nome store , immetti un valore (come
My Store
). -
Clic Salva configurazione.
-
Nel menu di navigazione a sinistra, nella sezione Generale, fai clic su Contatti.
-
Nel riquadro di destra, espandere Opzioni e-mail.
-
Se necessario, cancellare il Usa predefinito accanto alla casella di controllo Invia e-mail a campo.
-
Immetti un indirizzo e-mail nel campo.
-
Clic Salva configurazione.
-
Utilizza il Visualizzazione store elenco per selezionare Configurazione predefinita come illustrato nella figura seguente.
-
Nel riquadro a sinistra, fai clic su Clienti > Configurazione cliente.
-
Nel riquadro di destra, espandere Crea nuove opzioni account.
-
Se necessario, cancellare il Usa valore di sistema accanto alla casella di controllo Dominio e-mail predefinito campo.
-
Immetti un nome di dominio nel campo.
-
Clic 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
Ad esempio, se Commerce è installato in
/var/www/html/magento2
, immetti:code language-bash cd /var/www/html/magento2 php bin/magento app:config:dump
-
Conferma che
app/etc/config.php
aggiornata.code language-bash git status
Risposta di esempio:
code language-terminal 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 Esegui non invia modifiche al generated
,pub/media
, opub/static
directory 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 al 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 build:
-
Accedi al sistema di build come proprietario del file system.
-
Passare alla directory radice dell'applicazione.
code language-bash cd <Magento root dir>
-
Richiama le modifiche in
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 Invia e-mail a è un sito web e l’ambito di applicazione Dominio e-mail predefinito è globale (ovvero l’ambito Configurazione predefinita).
È necessario il codice del sito web per impostare Invia e-mail a valore di configurazione.
Per ulteriori informazioni sulla ricerca di questo valore, vedi: 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, vedi: Riferimento ai 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, utilizza 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 ambito, 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 per impostare una whitelist di indirizzi IP, consulta
magento maintenance:enable
. -
Arrestare tutti i processi di lavoro in esecuzione impostando
cron_run
afalse
inapp/etc/env.php
come segue: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 attivo del consumatore.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.
-
Clic Negozi > Impostazioni > Configurazione > Generale > Generale.
-
Utilizza il Visualizzazione store nell’angolo in alto a sinistra 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 Nome store è modificabile nell’ambito del sito web, ma se passi all’ambito Configurazione predefinita non è modificabile. 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, nella sezione Generale, fai clic su Contatti.
Il Invia e-mail a non è modificabile, come illustrato nella figura seguente. Si tratta di un’impostazione sensibile.
-
Nel riquadro a sinistra, fai clic su Clienti > Configurazione cliente.
-
Nel riquadro di destra, espandere Crea nuove opzioni account.
Il valore della proprietà Dominio e-mail predefinito viene visualizzato come segue. Si tratta di un’impostazione specifica del sistema.