Eigenschaften für die Anwendungskonfiguration
Die .magento.app.yaml
-Datei verwendet Eigenschaften, um die Umgebungsunterstützung für das Commerce-Programm zu verwalten.
Pfade:
"var": "shared:files/var"
"app/etc": "shared:files/etc"
"pub/media": "shared:files/media"
"pub/static": "shared:files/static"
Dienste:
database: "mysql:mysql"
redis: "redis:redis"
opensearch: "opensearch:opensearch"
Erweiterungen:
xsl
newrelic
sodium
name
Die name
-Eigenschaft stellt den Anwendungsnamen bereit, der in der routes.yaml
-Datei zum Definieren des Upstreams des HTTP-Codes verwendet wird (standardmäßig mymagento:http
). Wenn beispielsweise der Wert von name
app
ist, müssen Sie app:http
im Upstream-Feld verwenden.
type
und build
Die type
- und build
-Eigenschaften stellen Informationen zum Basis-Container-Image bereit, das zum Erstellen und Ausführen des Projekts erforderlich ist.
Die unterstützte type
ist PHP. Geben Sie die PHP-Version wie folgt an:
type: php:<version>
Die build
-Eigenschaft bestimmt standardmäßig, was beim Erstellen des Projekts geschieht. Die flavor
gibt einen Standardsatz von auszuführenden Build-Aufgaben an. Das folgende Beispiel zeigt die Standardkonfiguration für type
und build
aus 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 build: flavor:
-Eigenschaft 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:
composer
alsbuild: flavor:
entfernen undnone
hinzufügen. Diese Änderung verhindert, dass Cloud die standardmäßige Version 1.x von Composer zum Ausführen von Build-Aufgaben verwendet.- Fügen Sie
composer/composer: '^2.0'
alsphp
Abhängigkeit für die Installation von Composer 2.x hinzu. - Fügen Sie die
composer
Build-Aufgaben einembuild
-Hook hinzu, um die Build-Aufgaben mit Composer 2.x auszuführen.
Verwenden Sie die folgenden Konfigurationsfragmente in Ihrer eigenen .magento.app.yaml
:
# 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 Composer finden SieErforderliche Pakete“.
dependencies
Geben Sie Abhängigkeiten an, die Ihre Anwendung möglicherweise während des Build-Prozesses benötigt.
Adobe Commerce unterstützt Abhängigkeiten von den folgenden Sprachen:
- PHP
- Rubin
- Node.js
Diese Abhängigkeiten sind unabhängig von den etwaigen Abhängigkeiten Ihrer Anwendung und in der PATH
, während des Build-Prozesses und in der Laufzeitumgebung Ihrer Anwendung verfügbar.
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. um Erweiterungen zu aktivieren. Die folgenden Erweiterungen sind erforderlich:
runtime:
extensions:
- xsl
- newrelic
- sodium
Siehe PHP-Einstellungen für Details zum Aktivieren von Erweiterungen.
disk
Definiert die persistente Festplattengröße der Anwendung in MB.
disk: 5120
Die minimal empfohlene Festplattengröße beträgt 256 MB. Wenn der Fehler UserError: Error building the project: Disk size may not be smaller than 128MB
angezeigt wird, erhöhen Sie die Größe auf 256 MB.
mounts
- und disk
für Ihr Programm 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 name
ist für die Anwendung in der MAGENTO_CLOUD_RELATIONSHIPS
Umgebungsvariablen verfügbar. Die <service-name>:<endpoint-name>
Beziehung ist den in der .magento/services.yaml
definierten Werten für Name und Typ zugeordnet.
relationships:
<name>: "<service-name>:<endpoint-name>"
Im Folgenden finden Sie ein Beispiel für die Standardbeziehungen:
relationships:
database: "mysql:mysql"
redis: "redis:redis"
opensearch: "opensearch:opensearch"
rabbitmq: "rabbitmq:rabbitmq"
Unter Services finden Sie eine vollständige Liste der derzeit unterstützten Service-Typen und Endpunkte.
mounts
Ein Objekt, dessen Schlüssel Pfade relativ zum Stamm der Anwendung sind. Die Einhängung ist ein beschreibbarer Bereich auf der Festplatte für Dateien. Im Folgenden finden Sie eine standardmäßige Liste der Bereitstellungen, die in der magento.app.yaml
-Datei unter Verwendung der volume_id[/subpath]
-Syntax konfiguriert wurden:
# 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 Ihres Mount zu dieser Liste ist wie folgt:
"/public/sites/default/files": "shared:files/files"
shared
- Gibt ein Volume zwischen Ihren Programmen innerhalb einer Umgebung frei.disk
() - Definiert die für das freigegebene Volume verfügbare Größe.
mounts
- und disk
für Ihr Programm 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 Web-Bereitstellung zugänglich machen, indem Sie es zu dem web
Block von Standorten hinzufügen.
subpath
Teil des Bereitstellungsnamens. Dieser Wert ist die eindeutige Kennung für den files
. Wenn Sie diesen Namen ändern, gehen alle am alten Speicherort gespeicherten Site-Daten verloren.access
Die Eigenschaft "access
" gibt eine minimale Benutzerrollenebene an, die SSH-Zugriff auf die Umgebungen erlaubt. Die verfügbaren Benutzerrollen sind:
admin
- Kann Einstellungen ändern und Aktionen in der Umgebung ausführen; hat Mitwirkende und Betrachter-Rechte.contributor
- Kann Code in diese Umgebung pushen und von der Umgebung aus eine Verzweigung erstellen; verfügt über Viewer-Rechte.viewer
- Kann nur die Umgebung anzeigen.
Die Standardbenutzerrolle ist contributor
, wodurch der SSH-Zugriff von Benutzern mit ausschließlich ""- eingeschränkt wird. Sie können die Benutzerrolle in viewer
ändern, um SSH-Zugriff nur für Benutzer mit ""- zuzulassen:
access:
ssh: viewer