Beispiel mit CLI-Befehlen

Dieses Beispiel zeigt, wie Sie in Ihrem Entwicklungssystem gemeinsame, systemspezifische und vertrauliche Werte festlegen und diese Werte dann in Ihrem Produktionssystem bereitstellen.
Dies geschieht mithilfe einer Kombination aus freigegebenen Konfigurationen, der config.php-Datei und dem Commerce-CLI-Befehl.

In diesem Beispiel werden die folgenden Konfigurationseinstellungen verwendet:

  • Umsatzsteuernummer und Store-Name für die freigegebenen Konfigurationseinstellungen.

    Diese finden Sie unter Stores > Einstellungen > Konfiguration > Allgemein Allgemein.

  • E-Mails senden an für den sensiblen Konfigurationswert.

    Diese finden Sie unter Stores > Einstellungen > Konfiguration > Allgemein Kontakte.

  • Standard-E-Mail Domain) für den systemspezifischen Konfigurationswert.

    Dies finden Sie unter Stores > Einstellungen > Konfiguration > Kunden > Kundenkonfiguration > Optionen für neues Konto erstellen.

Sie können das in diesem Beispiel beschriebene Verfahren verwenden, um alle Einstellungen in den folgenden Verweisen zu konfigurieren:

Bevor Sie beginnen

Bevor Sie beginnen, richten Sie Dateisystemberechtigungen und -eigentümerschaft ein, wie in Voraussetzung für Entwicklungs-, Build- und Produktionssysteme beschrieben.

Annahmen

Dieses Thema enthält ein Beispiel für das Ändern der Konfiguration des Produktionssystems. Sie können bei Bedarf verschiedene Konfigurationsoptionen auswählen.

Für die Zwecke dieses Beispiels gehen wir von Folgendem aus:

  • Sie verwenden die Git-Quell-Code-Verwaltung
  • Das Entwicklungssystem ist in einem Git-Remote-Repository namens mconfig verfügbar
  • Ihre Git-Arbeitsverzweigung heißt m2.2_deploy

Schritt 1: Festlegen der Konfiguration im Entwicklungssystem

So legen Sie das Standardgebietsschema und die Gewichtungseinheiten in Ihrem Entwicklungssystem fest:

  1. Melden Sie sich beim Administrator an.

  2. Klicken Sie auf Stores > Einstellungen > Konfiguration > Allgemein > Allgemein.

  3. Wenn mehr als eine Website verfügbar ist, verwenden Sie die Liste Store-Ansicht in der oberen linken Ecke, um zu einer anderen Website zu wechseln, wie in der folgenden Abbildung dargestellt.

    Websites wechseln

  4. Erweitern Sie im rechten Bereich Informationen speichern.

  5. Deaktivieren Sie bei Bedarf das Standard verwenden Kontrollkästchen neben den Feldern MwSt.-Nummer und Store-Name.

  6. Geben Sie eine Zahl in das Feld ein (z. B. 12345).

  7. Geben im Feld Store-Name“ einen Wert ein (wie My Store).

  8. Klicken Sie Konfiguration speichern.

  9. Klicken Sie in der linken Navigation unter Allgemein auf Kontakte.

  10. Erweitern Sie im rechten Bereich E-Mail-Optionen.

  11. Deaktivieren Sie bei Bedarf das Standard verwenden neben dem Feld E-Mails senden an.

  12. Geben Sie eine E-Mail-Adresse ein.

  13. Klicken Sie Konfiguration speichern.

  14. Wählen Sie in Liste "" die Standardkonfiguration aus, wie in der folgenden Abbildung dargestellt.

    Wechseln Sie zur Standardkonfiguration

  15. Klicken Sie im linken Bereich auf Kunden > Kundenkonfiguration.

  16. Erweitern Sie im rechten Bereich Neue Kontooptionen erstellen.

  17. Deaktivieren Sie bei Bedarf das Systemwert verwenden neben dem Feld Standard-E-Mail-Domain.

  18. Geben Sie einen Domain-Namen in das Feld ein.

  19. Klicken Sie Konfiguration speichern.

  20. Leeren Sie den Cache, wenn Sie dazu aufgefordert werden.

Schritt 2: Aktualisieren der Konfiguration

Nachdem Sie nun die Konfiguration in Admin geändert haben, schreiben Sie die freigegebene Konfiguration in eine Datei , wie in den folgenden Schritten beschrieben:

Aktualisieren der Konfiguration:

  1. Melden Sie sich bei Ihrem Entwicklungssystem als Eigentümer an oder wechseln Sie zum Dateisystembesitzer.

  2. Wechseln Sie zum Anwendungsstamm und führen Sie den Befehl „dump“ aus.

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

    Wenn beispielsweise Commerce in /var/www/html/magento2 installiert ist, geben Sie Folgendes ein:

    code language-bash
    cd /var/www/html/magento2
    php bin/magento app:config:dump
    
  3. Bestätigen Sie, dass app/etc/config.php aktualisiert wurde.

    code language-bash
    git status
    

    Beispielantwort:

    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
    Übermitteln nicht Änderungen an den generated-, pub/media- oder pub/static-Ordnern an die Quell-Code-Verwaltung. Sie generieren diese Dateien auf Ihrem Build-System. Das Entwicklungssystem verfügt wahrscheinlich über Code, Designs usw., die nicht für die Verwendung im Produktionssystem bereit sind.
  4. Checken Sie Ihre Änderungen ein, um nur die Quellcodeverwaltung zu app/etc/config.php.

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

Auch wenn app/etc/env.php (die systemspezifische Konfiguration) aktualisiert wurde, checken Sie es nicht in die Versionsverwaltung ein.
Die Konfigurationseinstellungen werden später in diesem Verfahren auf Ihrem Produktionssystem erstellt.

Schritt 3: Build-System aktualisieren und Dateien generieren

Nachdem Sie Ihre Änderungen an der freigegebenen Konfiguration in die Versionsverwaltung übertragen haben, können Sie diese Änderungen in Ihr Buildsystem übertragen, den Code kompilieren und statische Dateien generieren.

So aktualisieren Sie das Build-System:

  1. Melden Sie sich beim Build-System als Eigentümer des Dateisystems an.

  2. Wechseln Sie in das Stammverzeichnis der Anwendung.

    code language-bash
    cd <Magento root dir>
    
  3. Abrufen der Änderungen an app/etc/config.php aus der Quell-Code-Verwaltung.

    code language-bash
    git pull mconfig m2.2_deploy
    
  4. Kompilieren Sie Code.

    code language-bash
    bin/magento setup:di:compile
    
  5. Generieren Sie nach dem Kompilieren des Codes statische Ansichtsdateien.

    code language-bash
    bin/magento setup:static-content:deploy -f
    
  6. Überprüfen Sie die Änderungen in der Quell-Code-Verwaltung.

    code language-bash
    git add -A && git commit -m "Updated files on build system" && git push mconfig m2.2_deploy
    

Schritt 4: Aktualisieren des Produktionssystems

Der letzte Schritt im Prozess ist die Aktualisierung Ihres Produktionssystems. Sie müssen es in zwei Teilen tun:

  • Aktualisieren der sensiblen und systemspezifischen Einstellungen
  • Aktualisieren der freigegebenen Einstellungen

Aktualisieren der sensiblen und systemspezifischen Einstellungen

Um die sensiblen und systemspezifischen Einstellungen mithilfe von Umgebungsvariablen festzulegen, müssen Sie Folgendes wissen:

  • Umfang für jede Einstellung

    Wenn Sie die Anweisungen in Schritt 1 befolgt haben, lautet der Bereich für E-Mails senden an Website und der Bereich für Standard-E-Mail-Domain ist global (d. h. der Standardkonfigurationsbereich).

    Sie benötigen den Website-Code, um den Konfigurationswert E-Mails senden an“.

    Weitere Informationen dazu, wie Sie diesen Wert finden, finden Sie unter Verwenden von Umgebungsvariablen zum Überschreiben der Konfigurationseinstellungen.

  • Konfigurationspfade für die in diesem Beispiel verwendeten Einstellungen:

    table 0-row-2 1-row-2 2-row-2
    Name der Einstellung Konfigurationspfad
    E-Mails senden an contact/email/recipient_email
    Standard-E-Mail-Domain customer/create_account/email_domain

    Informationen zu allen sensiblen und systemspezifischen Konfigurationspfaden finden Sie unter: Sensitive und systemspezifische Konfigurationspfade - Referenz.

Festlegen der Variablen mithilfe von CLI-Befehlen

Verwenden Sie die folgenden CLI-Befehle, um systemspezifische und vertrauliche Konfigurationseinstellungen festzulegen:

  • magento config:set für systemspezifische Einstellungen
  • magento config:sensitive:set für vertrauliche Einstellungen

Verwenden Sie den folgenden Befehl, um die Einstellung „Standard E-Mail-Domain“ festzulegen, die sich im Standardbereich befindet:

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

Sie müssen den Bereich nicht im Befehl verwenden, da dies der Standardbereich ist.

Um Werte für E-Mails senden an festzulegen, müssen Sie jedoch den Bereichstyp (website) und den Bereichscode kennen, der wahrscheinlich auf jeder Site unterschiedlich ist.

Beispiel:

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

Aktualisieren der freigegebenen Einstellungen

In diesem Abschnitt wird beschrieben, wie Sie alle an Ihren Entwicklungs- und Build-Systemen vorgenommenen Änderungen in eine Produktionsumgebung übertragen, wodurch die freigegebenen Konfigurationseinstellungen (Store-Name und MwSt.-Nummer) aktualisiert werden.

So aktualisieren Sie das Produktionssystem:

  1. Melden Sie sich beim Produktionssystem als Eigentümer des Dateisystems an.

  2. Wechseln Sie zum Anwendungsstamm und aktivieren Sie den Wartungsmodus.

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

    Weitere Optionen, z. B. die Möglichkeit, eine IP-Adressen-Zulassungsliste festzulegen, finden Sie unter magento maintenance:enable.

  3. Beenden Sie alle ausgeführten Warteschlangenarbeitnehmer, indem Sie cron_run wie folgt auf false in app/etc/env.php setzen:

    code language-php?start_inline=1
    'cron_consumers_runner' => [
            'cron_run' => false
        ]
    
  4. Aktualisieren Sie die Konfiguration.

    code language-bash
    bin/magento app:config:import
    
  5. kill Sie abschließend alle aktiven Verbraucherprozesse.

    code language-bash
    kill <PID>
    

    Dabei ist PID die Prozess-ID, die abgebrochen werden soll, z. B.:

    code language-bash
    kill 1234
    
  6. Code aus der Quellcodeverwaltung abrufen.

    code language-bash
    git pull mconfig m2.2_deploy
    
  7. Aktualisieren Sie die Konfiguration.

    code language-bash
    bin/magento app:config:import
    
  8. Reinigen Sie den Cache.

    code language-bash
    bin/magento cache:clean
    
  9. Wartungsmodus beenden

    code language-bash
    bin/magento maintenance:disable
    

Überprüfen der Konfigurationseinstellungen in der Admin Console

So überprüfen Sie die Konfigurationseinstellungen:

  1. Melden Sie sich beim Administrator Ihres Produktionssystems an.

  2. Klicken Sie auf Stores > Einstellungen > Konfiguration > Allgemein > Allgemein.

  3. Verwenden Sie die Store-Ansicht in der oberen linken Ecke, um zu einer anderen Website zu wechseln.

    Die freigegebenen Konfigurationsoptionen, die Sie im Entwicklungssystem festlegen, werden ähnlich der folgenden angezeigt.

    Überprüfen Sie die Einstellungen im Produktionssystem

    note info
    INFO
    Das Store-Name-Feld kann im Website-Bereich bearbeitet werden, wenn Sie jedoch zum Standard-Konfigurationsbereich wechseln, ist es nicht bearbeitbar. Dies ist das Ergebnis der Einstellung der Optionen im Entwicklungssystem. Der Wert MwSt.-Nummer kann im Website-Umfang nicht bearbeitet werden.
  4. Wechseln Sie, falls noch nicht geschehen, zum Bereich „Standardkonfiguration“.

  5. Klicken Sie in der linken Navigation unter Allgemein auf Kontakte.

    Das Feld E-Mails senden an kann nicht bearbeitet werden, wie in der folgenden Abbildung dargestellt. Dies ist ein sensibler Bereich.

    Überprüfen Sie die Einstellungen im Produktionssystem

  6. Klicken Sie im linken Bereich auf Kunden > Kundenkonfiguration.

  7. Erweitern Sie im rechten Bereich Neue Kontooptionen erstellen.

    Der Wert des Felds Standard-E-Mail Domain) wird wie folgt angezeigt. Dies ist eine systemspezifische Einstellung.

    Überprüfen Sie die Einstellungen im Produktionssystem

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