Beispiel mit einer freigegebenen Konfiguration
Dieses Beispiel zeigt, wie Sie die folgenden Einstellungen in Ihrem Entwicklungssystem ändern, die freigegebene Konfigurationsdatei config.php in Ihrem Build-System aktualisieren und dieselben Einstellungen in Ihrem Produktionssystem implementieren:
- Zeitzone
- Gewichtseinheit
Diese Einstellungen sind im Admin-Bereich unter Stores > Einstellungen > Konfiguration > Allgemein > Allgemein verfügbar.
Mit demselben Verfahren können Sie auch nicht vertrauliche, nicht systemspezifische Einstellungen in den folgenden Verweisen konfigurieren:
Bevor Sie beginnen
Bevor Sie beginnen, richten Sie Dateisystemberechtigungen und -eigentümerschaft ein, wie in Voraussetzungen 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
mconfigverfügbar - Ihre Git-Arbeitsverzweigung heißt
m2.2_deploy
Schritt 1: Festlegen der Konfiguration im Entwicklungssystem
So legen Sie die Zeitzonen- und Gewichtungseinheiten in Ihrem Entwicklungssystem fest:
-
Melden Sie sich beim Administrator an.
-
Klicken Sie auf Stores > Einstellungen > Konfiguration > Allgemein > Allgemein.
-
Erweitern Sie im rechten Bereich Gebietsschema-Optionen.
Die folgende Abbildung zeigt ein Beispiel.
-
Klicken Sie in der Zeitzone auf GMT+00:00 (UTC).
-
Deaktivieren Sie das Systemwert verwenden neben dem Feld Gewichtungseinheit.
-
Klicken Sie in der Gewichtseinheit-Liste auf kgs.
-
Klicken Sie Konfiguration speichern.
-
Leeren Sie den Cache, wenn Sie dazu aufgefordert werden.
Schritt 2: Aktualisieren der freigegebenen Konfiguration
Generieren Sie die freigegebene Konfigurationsdatei app/etc/config.php in Ihrem Entwicklungssystem und übertragen Sie sie mithilfe der Versionskontrolle auf Ihr Build-System, wie in diesem Abschnitt beschrieben.
Aktualisieren der Konfiguration:
-
Melden Sie sich bei Ihrem Entwicklungssystem als Eigentümer an oder wechseln Sie zum Dateisystembesitzer.
-
Wechseln Sie zum Anwendungsstamm und führen Sie den Befehl „dump“ aus.
code language-bash cd <Magento root dir> php bin/magento app:config:dumpWenn beispielsweise Commerce in
/var/www/html/magento2installiert ist, geben Sie Folgendes ein:code language-bash cd /var/www/html/magento2 php bin/magento app:config:dump -
Bestätigen Sie, dass
app/etc/config.phpaktualisiert wurde.code language-bash git statusBeispielantwort:
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 Übermitteln nicht Änderungen an den generated-,pub/media- oderpub/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. -
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
Schritt 3: Build-System aktualisieren und Dateien generieren
Nachdem Sie Ihre Änderungen an der freigegebenen Konfiguration in die Quell-Code-Verwaltung übertragen haben, können Sie diese Änderungen in Ihr Build-System übernehmen, Code kompilieren und statische Dateien generieren. Der letzte Schritt besteht darin, diese Änderungen an Ihr Produktionssystem zu übertragen. Daher entspricht die Konfiguration Ihres Produktionssystems Ihrem Entwicklungssystem.
So aktualisieren Sie das Build-System:
-
Melden Sie sich beim Build-System als Eigentümer des Dateisystems an.
-
Wechseln Sie in das Stammverzeichnis der Anwendung.
code language-bash cd <Magento root dir> -
Abrufen der Änderungen an
app/etc/config.phpaus der Quell-Code-Verwaltung.code language-bash git pull mconfig m2.2_deploy -
Kompilieren Sie Code.
code language-bash bin/magento setup:di:compile -
Generieren Sie nach dem Kompilieren des Codes statische Ansichtsdateien.
code language-bash bin/magento setup:static-content:deploy -f -
Ü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 besteht darin, Ihr Produktionssystem über die Versionsverwaltung zu aktualisieren. Dadurch werden alle Änderungen abgerufen, die Sie an Ihren Entwicklungs- und Build-Systemen vorgenommen haben, was bedeutet, dass Ihr Produktionssystem völlig auf dem neuesten Stand ist.
So aktualisieren Sie das Produktionssystem:
-
Melden Sie sich beim Produktionssystem als Eigentümer des Dateisystems an.
-
Wechseln Sie zum Anwendungsstamm und aktivieren Sie den Wartungsmodus.
code language-bash cd <Magento root dir>code language-bash bin/magento maintenance:enableWeitere Optionen, z. B. die Möglichkeit, eine IP-Adressen-Zulassungsliste festzulegen, finden Sie unter
magento maintenance:enable. -
Beenden Sie alle ausgeführten Warteschlangenarbeitnehmer, indem Sie
cron_runwie folgt auffalseinapp/etc/env.phpsetzen:code language-php?start_inline=1 'cron_consumers_runner' => [ 'cron_run' => false ] -
Aktualisieren Sie die Konfiguration.
code language-bash bin/magento app:config:import -
killSie abschließend alle aktiven Verbraucherprozesse.code language-bash kill <PID>Dabei ist
PIDdie Prozess-ID, die abgebrochen werden soll, z. B.:code language-bash kill 1234 -
Code aus der Quellcodeverwaltung abrufen.
code language-bash git pull mconfig m2.2_deploy -
Aktualisieren Sie die Konfiguration.
code language-bash bin/magento app:config:import -
Reinigen Sie den Cache.
code language-bash bin/magento cache:clean -
Wartungsmodus beenden
code language-bash bin/magento maintenance:disable
Überprüfen Sie die Änderungen in der Admin Console.
So überprüfen Sie, ob diese Einstellungen im Administrator nicht bearbeitbar sind:
-
Melden Sie sich beim Administrator an.
-
Klicken Sie auf Stores > Einstellungen > Konfiguration > Allgemein > Allgemein.
-
Erweitern Sie im rechten Bereich Gebietsschema-Optionen.
Die soeben festgelegten Optionen werden wie folgt angezeigt:
magento config:set --lock Befehl.