Exempel med en delad konfiguration
I det här exemplet visas hur du ändrar följande inställningar i utvecklingssystemet, uppdaterar den delade konfigurationsfilen, config.php, i ditt build-system och implementerar samma inställningar i produktionssystemet:
- Tidszon
- Viktenhet
De här inställningarna är tillgängliga i Admin i Lagrar > Inställningar > Konfiguration > Allmänt > Allmänt.
Du kan använda samma procedur för att konfigurera icke-känsliga, icke-systemspecifika inställningar i följande referenser:
Innan du börjar
Innan du börjar konfigurerar du filsystembehörigheter och ägarskap enligt beskrivningen i Förutsättningar för utvecklings-, bygg- och produktionssystem.
Antaganden
Det här avsnittet innehåller ett exempel på hur du ändrar konfigurationen av produktionssystemet. Du kan välja olika konfigurationsalternativ om du vill.
I det här exemplet förutsätts följande:
- Du använder Git-källkontrollen
- Utvecklingssystemet är tillgängligt i en Git-fjärrdatabas med namnet
mconfig - Din Git-arbetsgrupp heter
m2.2_deploy
Steg 1: Ange konfigurationen i utvecklingssystemet
Så här anger du tidszon- och viktenheter i utvecklingssystemet:
-
Logga in på Admin.
-
Klicka på Lagrar > Inställningar > Konfiguration > Allmänt > Allmänt.
-
Expandera Språkalternativ i den högra rutan.
I bilden nedan visas ett exempel.
-
Klicka på GMT+0 (UTC)i listan :00Tidszon.
-
Avmarkera kryssrutan Använd systemvärde intill fältet Viktenhet.
-
Klicka på kgs i listan Viktenhet.
-
Klicka på Spara konfiguration.
-
Rensa cachen om du uppmanas till det.
Steg 2: Uppdatera den delade konfigurationen
Generera den delade konfigurationsfilen, app/etc/config.php, i utvecklingssystemet och överför den med hjälp av källkontroll till ditt build-system, vilket beskrivs i det här avsnittet.
Så här uppdaterar du konfigurationen:
-
Logga in på utvecklingssystemet som ägare av filsystemet eller växla till det.
-
Byt till programroten och kör kommandot dump.
code language-bash cd <Magento root dir> php bin/magento app:config:dumpOm Commerce till exempel är installerat i
/var/www/html/magento2anger du:code language-bash cd /var/www/html/magento2 php bin/magento app:config:dump -
Bekräfta att
app/etc/config.phphar uppdaterats.code language-bash git statusExempelsvar:
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 Skicka inte ändringar i katalogerna generated,pub/mediaellerpub/statictill källkontrollen. Du genererar dessa filer i ditt byggsystem. Utvecklingssystemet har förmodligen kod, teman och så vidare som inte är klara att användas i produktionssystemet. -
Checka endast in dina ändringar i
app/etc/config.phpför källkontroll.code language-bash git add app/etc/config.php && git commit -m "Updated shared configuration" && git push mconfig m2.2_deploy
Steg 3: Uppdatera ditt byggsystem och generera filer
Nu när du har implementerat ändringarna i den delade konfigurationen för källkontroll kan du dra in dessa ändringar i ditt build-system, kompilera kod och generera statiska filer. Det sista steget är att föra över dessa ändringar till produktionssystemet. Resultatet blir att produktionssystemets konfiguration matchar utvecklingssystemet.
Så här uppdaterar du byggsystemet:
-
Logga in på byggsystemet som ägare av filsystemet.
-
Byt till programmets rotkatalog.
code language-bash cd <Magento root dir> -
Dra in ändringarna i
app/etc/config.phpfrån källkontrollen.code language-bash git pull mconfig m2.2_deploy -
Kompilera kod.
code language-bash bin/magento setup:di:compile -
Generera statiska vyfiler när koden har kompilerats.
code language-bash bin/magento setup:static-content:deploy -f -
Kontrollera ändringarna i källkontrollen.
code language-bash git add -A && git commit -m "Updated files on build system" && git push mconfig m2.2_deploy
Steg 4: Uppdatera produktionssystemet
Det sista steget i processen är att uppdatera produktionssystemet från källkontroll. Då uppdateras alla ändringar du har gjort i dina utvecklings- och konstruktionssystem, vilket innebär att ditt produktionssystem är helt uppdaterat.
Så här uppdaterar du produktionssystemet:
-
Logga in i produktionssystemet som filsystemsägare.
-
Byt till programroten och aktivera underhållsläge.
code language-bash cd <Magento root dir>code language-bash bin/magento maintenance:enableYtterligare alternativ, som möjligheten att ange en vitlista för IP-adresser, finns i
magento maintenance:enable. -
Stoppa alla köarbetare som körs genom att ange
cron_runtillfalseiapp/etc/env.phpenligt följande:code language-php?start_inline=1 'cron_consumers_runner' => [ 'cron_run' => false ] -
Uppdatera konfigurationen.
code language-bash bin/magento app:config:import -
Slutligen
killalla aktiva konsumentprocesser.code language-bash kill <PID>Där
PIDär process-ID:t som ska dödas, till exempel:code language-bash kill 1234 -
Dra in kod från källkontrollen.
code language-bash git pull mconfig m2.2_deploy -
Uppdatera konfigurationen.
code language-bash bin/magento app:config:import -
Rensa cachen.
code language-bash bin/magento cache:clean -
Avsluta underhållsläge.
code language-bash bin/magento maintenance:disable
Verifiera ändringarna i administratören
Så här verifierar du att de här inställningarna inte går att redigera i Admin:
-
Logga in på Admin.
-
Klicka på Lagrar > Inställningar > Konfiguration > Allmänt > Allmänt.
-
Expandera Språkalternativ i den högra rutan.
De alternativ du just anger visas enligt följande:
magento config:set --lock .