Eigenschaften für die Anwendungskonfiguration

Die Datei .magento.app.yaml verwendet Eigenschaften, um die Umgebungsunterstützung für die Anwendung Commerce zu verwalten.

Name
Beschreibung
Standard
Erforderlich
access
Benutzerrollen anpassen
Nein
crons
Eigenschaften aktualisieren und Cron-Aufträge planen
Nein
dependencies
Zusätzliche Abhängigkeiten aktivieren
php:composer/composer: '2.2.4'
Nein
disk
Persistente Festplattengröße definieren
5120
Ja
firewall
(Nur Starter) Ausgehenden Traffic steuern
Nein
hooks
Anpassen von Shell-Befehlen für die Build-, Bereitstellungs- und Nach-Bereitstellung-Phasen
Nein
mounts
Pfade festlegen

Pfade:

  • "var": "shared:files/var"
  • "app/etc": "shared:files/etc"
  • "pub/media": "shared:files/media"
  • "pub/static": "shared:files/static"
Nein
name
Anwendungsnamen definieren
mymagento
Ja
relationships
Zuordnungsdienste

Dienste:

  • database: "mysql:mysql"
  • redis: "redis:redis"
  • opensearch: "opensearch:opensearch"
Nein
runtime
Die Laufzeiteigenschaft enthält Erweiterungen, die für die Commerce -Anwendung erforderlich sind.

Erweiterungen:

  • xsl
  • newrelic
  • sodium
Ja
type
Basisbehälterbild festlegen
php:8.3
Ja
variables
Anwenden einer Umgebungsvariablen auf eine bestimmte Commerce-Version
Nein
web
Umgang mit externen Anforderungen
Ja
workers
Umgang mit externen Anforderungen
Ja, wenn die Webeigenschaft nicht verwendet wird

name

Die Eigenschaft name stellt den Anwendungsnamen bereit, der in der Datei routes.yaml verwendet wird, um den HTTP-Upstream zu definieren (standardmäßig mymagento:http). Wenn der Wert von name beispielsweise app ist, müssen Sie app:http im Upstream-Feld verwenden.

WARNING
Ändern Sie den Namen der Anwendung nicht, nachdem sie bereitgestellt wurde. Dies führt zu Datenverlust.

type und build

Die Eigenschaften type und build enthalten Informationen zum Basisbehälterbild, das erstellt und ausgeführt werden soll.

Die unterstützte Sprache type ist PHP. Geben Sie die PHP-Version wie folgt an:

type: php:<version>

Die Eigenschaft build bestimmt, was standardmäßig beim Erstellen des Projekts geschieht. Der flavor gibt einen Standardsatz von auszuführenden Build-Aufgaben an. Das folgende Beispiel zeigt die Standardkonfiguration für type und build von magento-cloud/.magento.app.yaml:

# The toolstack used to build the application.
type: php:8.3
build:
    flavor: none

dependencies:
    php:
        composer/composer: '2.7.2'

Installieren und Verwenden von Composer 2

Die Eigenschaft build: flavor: wird nicht für Composer 2.x verwendet. Daher müssen Sie Composer während der Build-Phase manuell installieren. Um Composer 2.x in Ihren Starter- und Pro-Projekten zu installieren und zu verwenden, müssen Sie drei Änderungen an Ihrer .magento.app.yaml-Konfiguration vornehmen:

  1. Entfernen Sie composer als build: flavor: und fügen Sie none hinzu. Diese Änderung verhindert, dass Cloud die standardmäßige Version 1.x von Composer verwendet, um Build-Aufgaben auszuführen.
  2. Fügen Sie composer/composer: '^2.0' als php -Abhängigkeit für die Installation von Composer 2.x hinzu.
  3. Fügen Sie die Build-Aufgaben composer einem build-Hook hinzu, um die Build-Aufgaben mit Composer 2.x auszuführen.

Verwenden Sie die folgenden Konfigurationsfragmente in Ihrer eigenen .magento.app.yaml-Konfiguration:

# 1. Change flavor to none.
build:
    flavor: none

# 2. Add Composer ^2.0 as a php dependency.
dependencies:
    php:
        composer/composer: '^2.0'

# 3. Add a build hook to run the build tasks using Composer 2.x.
hooks:
    build: |
        set -e
        composer --no-ansi --no-interaction install --no-progress --prefer-dist --optimize-autoloader

Weitere Informationen zu Composer finden Sie unter Erforderliche Pakete .

dependencies

Geben Sie Abhängigkeiten an, die Ihre Anwendung während des Build-Prozesses möglicherweise benötigt.

Adobe Commerce unterstützt Abhängigkeiten in den folgenden Sprachen:

  • PHP
  • Ruby
  • Node.js

Diese Abhängigkeiten sind unabhängig von den letztendlichen Abhängigkeiten Ihrer Anwendung und stehen in der PATH, während des Build-Prozesses und in der Laufzeitumgebung Ihrer Anwendung zur Verfügung.

Sie können diese Abhängigkeiten wie folgt angeben:

ruby:
   sass: "~3.4"
nodejs:
   grunt-cli: "~0.3"

runtime

Verwenden Sie , um die PHP-Konfiguration zur Laufzeit zu ändern, z. B. zum Aktivieren von Erweiterungen. Die folgenden Erweiterungen sind erforderlich:

runtime:
    extensions:
        - xsl
        - newrelic
        - sodium

Weitere Informationen zum Aktivieren von Erweiterungen finden Sie unter PHP-Einstellungen .

disk

Definiert die persistente Festplattengröße der Anwendung in MB.

disk: 5120

Die empfohlene Mindestgröße beträgt 256 MB. Wenn der Fehler UserError: Error building the project: Disk size may not be smaller than 128MB auftritt, erhöhen Sie die Größe auf 256 MB.

NOTE
Bei Staging- und Produktionsumgebungen für Pro müssen Sie ein Adobe Commerce-Support-Ticket senden, um die Konfiguration mounts und disk für Ihre Anwendung zu aktualisieren. Geben Sie beim Senden des Tickets die erforderlichen Konfigurationsänderungen an und fügen Sie eine aktualisierte Version Ihrer .magento.app.yaml -Datei hinzu.

relationships

Definiert die Dienstzuordnung in der Anwendung.

Die Beziehung name ist für die Anwendung in der Umgebungsvariablen MAGENTO_CLOUD_RELATIONSHIPS verfügbar. Die <service-name>:<endpoint-name> -Beziehung ist mit den Namen- und Typwerten verknüpft, die in der .magento/services.yaml -Datei definiert sind.

relationships:
    <name>: "<service-name>:<endpoint-name>"

Im Folgenden finden Sie ein Beispiel für die standardmäßigen Beziehungen:

relationships:
    database: "mysql:mysql"
    redis: "redis:redis"
    opensearch: "opensearch:opensearch"
    rabbitmq: "rabbitmq:rabbitmq"

Eine vollständige Liste der derzeit unterstützten Diensttypen und Endpunkte finden Sie unter Dienste .

mounts

Ein Objekt, dessen Schlüssel Pfade relativ zum Stammverzeichnis der Anwendung sind. Das Mount ist ein schreibbarer Bereich auf der Festplatte für Dateien. Im Folgenden finden Sie eine Standardliste der in der Datei magento.app.yaml mit der Syntax volume_id[/subpath] konfigurierten Bereitstellungen:

 # The mounts that will be performed when the package is deployed.
mounts:
    "var": "shared:files/var"
    "app/etc": "shared:files/etc"
    "pub/media": "shared:files/media"
    "pub/static": "shared:files/static"

Das Format für das Hinzufügen Ihrer Reittierliste zu dieser Liste lautet wie folgt:

"/public/sites/default/files": "shared:files/files"
  • shared—Teilt ein Volumen zwischen Ihren Anwendungen innerhalb einer Umgebung.
  • disk - Definiert die für das freigegebene Volume verfügbare Größe.
NOTE
Bei Staging- und Produktionsumgebungen für Pro müssen Sie ein Adobe Commerce-Support-Ticket senden, um die Konfiguration mounts und disk für Ihre Anwendung zu aktualisieren. Geben Sie beim Senden des Tickets die erforderlichen Konfigurationsänderungen an und fügen Sie eine aktualisierte Version Ihrer .magento.app.yaml -Datei hinzu.

Sie können die Bereitstellung über das Internet zugänglich machen, indem Sie sie dem Block web der Positionen hinzufügen.

WARNING
Sobald Ihre Site über Daten verfügt, ändern Sie nicht den subpath -Teil des Bereitstellungsnamens. Dieser Wert ist die eindeutige Kennung für den Bereich files . Wenn Sie diesen Namen ändern, gehen alle am alten Speicherort gespeicherten Site-Daten verloren.

access

Die Eigenschaft access gibt ein Minimum an Benutzerrollenebene an, das SSH-Zugriff auf die Umgebungen erlaubt. Die verfügbaren Benutzerrollen sind:

  • admin: Kann Einstellungen ändern und Aktionen in der Umgebung ausführen; verfügt über die Berechtigungen contributor und viewer .
  • contributor: Kann Code in diese Umgebung und die Verzweigung aus der Umgebung pushen; hat Viewer -Rechte.
  • viewer - Kann nur die Umgebung anzeigen.

Die standardmäßige Benutzerrolle ist contributor, wodurch der SSH-Zugriff von Benutzern mit nur Viewer -Rechten eingeschränkt wird. Sie können die Benutzerrolle in "viewer" ändern, um Benutzern mit nur Viewer -Rechten den SSH-Zugriff zu ermöglichen:

access:
    ssh: viewer
recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26