Esempio di utilizzo di una configurazione condivisa
In questo esempio viene illustrato come modificare le impostazioni seguenti nel sistema di sviluppo, aggiornare il file di configurazione condiviso config.php nel sistema di build e implementare le stesse impostazioni nel sistema di produzione:
- Fuso orario
- Unità di peso
Queste impostazioni sono disponibili nell'Admin in Archivi > Impostazioni > Configurazione > Generale > Generale.
È possibile utilizzare la stessa procedura per configurare qualsiasi impostazione non sensibile e non specifica del sistema 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 il fuso orario e le unità di peso nel sistema di sviluppo:
-
Accedi all’amministratore.
-
Fai clic su Archivi > Impostazioni > Configurazione > Generale > Generale.
-
Nel riquadro di destra espandere Opzioni internazionali.
Nella figura seguente viene illustrato un esempio.
-
Dall'elenco Fuso orario, fare clic su GMT+00:00 (UTC).
-
Deselezionare la casella di controllo Usa valore di sistema accanto al campo Unità di peso.
-
Nell'elenco Unità di peso fare clic su kg.
-
Fai clic su Salva configurazione.
-
Se richiesto, svuotare la cache.
Passaggio 2: aggiornare la configurazione condivisa
Generare il file di configurazione condiviso app/etc/config.php nel sistema di sviluppo e trasferirlo utilizzando il controllo del codice sorgente nel sistema di compilazione, come descritto in questa sezione.
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:dumpSe 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 statusRisposta 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.phpnote warning WARNING non inviare le modifiche alle directory generated,pub/mediaopub/statical 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.phpsolo 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
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 generazione, compilare il codice e generare file statici. L’ultimo passaggio consiste nel richiamare tali modifiche nel sistema di produzione. Di conseguenza, la configurazione del sistema di produzione corrisponderà a quella del sistema di sviluppo.
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.phpdal 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 dal controllo del codice sorgente. In questo modo vengono richiamate tutte le modifiche apportate ai sistemi di sviluppo e creazione, il che significa che il sistema di produzione è completamente aggiornato.
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:enablePer 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_runsufalseinapp/etc/env.phpnel 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,
killqualsiasi 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 modifiche in Admin
Per verificare che queste impostazioni non siano modificabili in Admin:
-
Accedi all’amministratore.
-
Fai clic su Archivi > Impostazioni > Configurazione > Generale > Generale.
-
Nel riquadro di destra espandere Opzioni internazionali.
Le opzioni appena impostate vengono visualizzate come segue:
magento config:set --lock.