Exempel med CLI-kommandon

I det här exemplet visas hur du ställer in delade, systemspecifika och känsliga värden i utvecklingssystemet och sedan distribuerar dessa värden till produktionssystemet.
Detta görs genom att använda en kombination av delade konfigurationer, filen config.php och Commerce CLI-kommandot.

I det här exemplet används följande konfigurationsinställningar:

  • Vat Number och Store Name för de delade konfigurationsinställningarna.

    Dessa finns under Lager > Inställningar > Konfiguration > Allmänt > Allmänt.

  • Skicka e-post till för det känsliga konfigurationsvärdet.

    Detta finns under Lager > Inställningar > Konfiguration > Allmänt > Kontakter.

  • Standarddomän för e-post för det systemspecifika konfigurationsvärdet.

    Detta hittar du under Lager > Inställningar > Konfiguration > Kunder > Kundkonfiguration > Skapa nya kontoalternativ.

Du kan använda samma procedur som i det här exemplet för att konfigurera inställningar i följande referenser:

Innan du börjar

Konfigurera filsystembehörigheter och ägarskap enligt beskrivningen i Krav för utvecklings-, bygg- och produktionssystem innan du börjar.

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 standardinställningar för nationella inställningar och viktenheter i utvecklingssystemet:

  1. Logga in på Admin.

  2. Klicka på Lagrar > Inställningar > Konfiguration > Allmänt > Allmänt.

  3. Om du har fler än en webbplats tillgänglig kan du använda listan Butiksvy i det övre vänstra hörnet för att växla till en annan webbplats som på bilden nedan.

    Växla webbplatser

  4. Expandera Lagra information i den högra rutan.

  5. Om det behövs avmarkerar du kryssrutan Använd standard bredvid fälten Momsnummer och Butiksnamn.

  6. Ange ett tal i fältet (till exempel 12345).

  7. Ange ett värde (till exempel My Store) i fältet Butiksnamn.

  8. Klicka på Spara konfiguration.

  9. Klicka på Kontakter under Allmänt i den vänstra navigeringen.

  10. Expandera E-postalternativ i den högra rutan.

  11. Om det behövs avmarkerar du kryssrutan Använd standard bredvid fältet Skicka e-post till.

  12. Ange en e-postadress i fältet.

  13. Klicka på Spara konfiguration.

  14. Använd listan Butiksvy för att välja Standardkonfiguration enligt bilden nedan.

    Växla till standardkonfigurationen

  15. Klicka på Kunder > Kundkonfiguration i den vänstra rutan.

  16. Expandera Skapa nya kontoalternativ i den högra rutan.

  17. Om det behövs avmarkerar du kryssrutan Använd systemvärde bredvid fältet Standarddomän för e-post.

  18. Ange ett domännamn i fältet.

  19. Klicka på Spara konfiguration.

  20. Rensa cachen om du uppmanas till det.

Steg 2: Uppdatera konfigurationen

Nu när du har ändrat konfigurationen i Admin skriver du den delade konfigurationen till en fil enligt följande:

Så här uppdaterar du konfigurationen:

  1. Logga in på utvecklingssystemet som ägare av filsystemet eller växla till det.

  2. Byt till programroten och kör kommandot dump.

    code language-bash
    cd <Magento root dir>
    php bin/magento app:config:dump
    

    Om Commerce till exempel är installerat i /var/www/html/magento2 anger du:

    code language-bash
    cd /var/www/html/magento2
    php bin/magento app:config:dump
    
  3. Bekräfta att app/etc/config.php har uppdaterats.

    code language-bash
    git status
    

    Exempelsvar:

    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
    Skicka inte ändringar i katalogerna generated, pub/media eller pub/static till 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.
  4. Checka endast in dina ändringar i app/etc/config.php för källkontroll.

    code language-bash
    git add app/etc/config.php && git commit -m "Updated shared configuration" && git push mconfig m2.2_deploy
    

Även om app/etc/env.php (den systemspecifika konfigurationen) har uppdaterats, ska du inte checka in den i källkontrollen.
Du kommer att skapa samma konfigurationsinställningar i produktionssystemet senare under den här proceduren.

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 överföra dessa ändringar till ditt build-system, kompilera koden och generera statiska filer.

Så här uppdaterar du byggsystemet:

  1. Logga in på byggsystemet som ägare av filsystemet.

  2. Byt till programmets rotkatalog.

    code language-bash
    cd <Magento root dir>
    
  3. Dra in ändringarna i app/etc/config.php från källkontrollen.

    code language-bash
    git pull mconfig m2.2_deploy
    
  4. Kompilera kod.

    code language-bash
    bin/magento setup:di:compile
    
  5. Generera statiska vyfiler när koden har kompilerats.

    code language-bash
    bin/magento setup:static-content:deploy -f
    
  6. 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. Du måste göra det i två delar:

  • Uppdatera känsliga och systemspecifika inställningar
  • Uppdatera de delade inställningarna

Uppdatera känsliga och systemspecifika inställningar

Om du vill ange känsliga och systemspecifika inställningar med hjälp av systemvariabler måste du känna till följande:

  • Omfång för varje inställning

    Om du följde instruktionerna i steg 1 är omfattningen för Skicka e-post till en webbplats och omfattningen för Standarddomän för e-post är global (d.v.s. standardkonfigurationsomfånget).

    Du behöver webbplatskoden för att ange konfigurationsvärdet Skicka e-post till.

    Mer information om hur du hittar det här värdet finns i: Använd miljövariabler för att åsidosätta konfigurationsinställningar.

  • Konfigurationssökvägar för inställningarna som används i det här exemplet:

    table 0-row-2 1-row-2 2-row-2
    Inställningsnamn Konfigurationssökväg
    Skicka e-post till contact/email/recipient_email
    Standarddomän för e-post customer/create_account/email_domain

    Information om alla känsliga och systemspecifika konfigurationssökvägar finns i: Känsliga och systemspecifika konfigurationssökvägar, referens.

Ange variabler med CLI-kommandon

Använd följande CLI-kommandon för att ange systemspecifika och känsliga konfigurationsinställningar:

  • magento config:set för systemspecifika inställningar
  • magento config:sensitive:set för känsliga inställningar

Använd följande kommando för att ange den systemspecifika inställningen Standarddomän för e-post, som finns i standardomfånget:

bin/magento config:set customer/create_account/email_domain <email domain>

Du behöver inte använda scopet i kommandot eftersom det är standardscopet.

Om du vill ange värden för Skicka e-post till måste du dock känna till omfångstypen (website) och omfångskoden, som troligtvis är annorlunda på alla webbplatser.

Exempel:

bin/magento config:sensitive:set contact/email/recipient_email --scope=website --scope-code=<website code> <email address>

Uppdatera de delade inställningarna

I det här avsnittet beskrivs hur du kan dra in alla ändringar du har gjort i din utveckling och bygga system till en produktionsmiljö, som uppdaterar de delade konfigurationsinställningarna (Butiksnamn och Momsnummer).

Så här uppdaterar du produktionssystemet:

  1. Logga in i produktionssystemet som filsystemsägare.

  2. Byt till programroten och aktivera underhållsläge.

    code language-bash
    cd <Magento root dir>
    
    code language-bash
    bin/magento maintenance:enable
    

    Ytterligare alternativ, som möjligheten att ange en vitlista för IP-adresser, finns i magento maintenance:enable.

  3. Stoppa alla köarbetare som körs genom att ange cron_run till false i app/etc/env.php enligt följande:

    code language-php?start_inline=1
    'cron_consumers_runner' => [
            'cron_run' => false
        ]
    
  4. Uppdatera konfigurationen.

    code language-bash
    bin/magento app:config:import
    
  5. Slutligen kill alla 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
    
  6. Dra in kod från källkontrollen.

    code language-bash
    git pull mconfig m2.2_deploy
    
  7. Uppdatera konfigurationen.

    code language-bash
    bin/magento app:config:import
    
  8. Rensa cachen.

    code language-bash
    bin/magento cache:clean
    
  9. Avsluta underhållsläge.

    code language-bash
    bin/magento maintenance:disable
    

Verifiera konfigurationsinställningar i administratören

Så här verifierar du konfigurationsinställningarna:

  1. Logga in i produktionssystemets administratör.

  2. Klicka på Lagrar > Inställningar > Konfiguration > Allmänt > Allmänt.

  3. Använd listan Butiksvy i det övre vänstra hörnet för att växla till en annan webbplats.

    De alternativ för delad konfiguration som du anger i utvecklingssystemet visas på liknande sätt som följande.

    Kontrollera inställningarna i produktionssystemet

    note info
    INFO
    Fältet Butiksnamn kan redigeras i webbplatsomfånget, men om du växlar till standardomfånget för konfiguration går det inte att redigera det. Detta är resultatet av hur du anger alternativen i utvecklingssystemet. Värdet VAT Number kan inte redigeras i webbplatsomfånget.
  4. Om du inte redan har gjort det växlar du till Standardkonfigurationsomfång.

  5. Klicka på Kontakter under Allmänt i den vänstra navigeringen.

    Fältet Skicka e-post till kan inte redigeras, vilket visas i bilden nedan. Det här är en känslig inställning.

    Kontrollera inställningarna i produktionssystemet

  6. Klicka på Kunder > Kundkonfiguration i den vänstra rutan.

  7. Expandera Skapa nya kontoalternativ i den högra rutan.

    Värdet i fältet Standarddomän för e-post visas enligt följande. Detta är en systemspecifik inställning.

    Kontrollera inställningarna i produktionssystemet

recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c