Eigenschappen voor toepassingsconfiguratie
Het bestand .magento.app.yaml
gebruikt eigenschappen voor het beheer van de omgevingsondersteuning voor de toepassing Commerce .
Paden:
"var": "shared:files/var"
"app/etc": "shared:files/etc"
"pub/media": "shared:files/media"
"pub/static": "shared:files/static"
Services:
database: "mysql:mysql"
redis: "redis:redis"
opensearch: "opensearch:opensearch"
Extensies:
xsl
newrelic
sodium
name
De eigenschap name
biedt de toepassingsnaam die in het routes.yaml
-bestand wordt gebruikt om de HTTP-upstream te definiëren (standaard mymagento:http
). Als de waarde van name
bijvoorbeeld app
is, moet u app:http
in het upstreamveld gebruiken.
type
en build
De eigenschappen type
en build
bevatten informatie over de basiscontainerafbeelding voor het samenstellen en uitvoeren van het project.
De ondersteunde type
taal is PHP. Geef de PHP-versie als volgt op:
type: php:<version>
De eigenschap build
bepaalt wat er standaard gebeurt bij het bouwen van het project. In flavor
wordt een standaardset bouwtaken opgegeven die moet worden uitgevoerd. In het volgende voorbeeld wordt de standaardconfiguratie voor type
en build
from magento-cloud/.magento.app.yaml
getoond:
# The toolstack used to build the application.
type: php:8.3
build:
flavor: none
dependencies:
php:
composer/composer: '2.7.2'
Composer 2 installeren en gebruiken
De eigenschap build: flavor:
wordt niet gebruikt voor Composer 2.x. Daarom moet u Composer handmatig installeren tijdens de constructiefase. Als u Composer 2.x wilt installeren en gebruiken in uw Starter- en Pro-projecten, moet u drie wijzigingen aanbrengen in de .magento.app.yaml
-configuratie:
- Verwijder
composer
alsbuild: flavor:
en voegnone
toe. Door deze wijziging wordt voorkomen dat Cloud de standaardversie 1.x van Composer gebruikt voor het uitvoeren van ontwikkeltaken. - Voeg
composer/composer: '^2.0'
toe als eenphp
-afhankelijkheid voor het installeren van Composer 2.x. - Voeg
composer
bouwtaken aan eenbuild
haak toe om bouwstijltaken in werking te stellen gebruikend Composer 2.x.
Gebruik de volgende configuratiefragmenten in uw eigen .magento.app.yaml
configuratie:
# 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
Zie Vereiste pakkettenvoor meer informatie over Composer.
dependencies
Specificeer gebiedsdelen die uw toepassing tijdens het bouwstijlproces zou kunnen vereisen.
Adobe Commerce ondersteunt afhankelijkheden voor de volgende talen:
- PHP
- Ruby
- Node.js
Deze afhankelijkheden zijn onafhankelijk van de uiteindelijke afhankelijkheden van uw toepassing en zijn beschikbaar in de PATH
, tijdens het ontwikkelproces en in de runtimeomgeving van uw toepassing.
U kunt die gebiedsdelen als volgt specificeren:
ruby:
sass: "~3.4"
nodejs:
grunt-cli: "~0.3"
runtime
Gebruik deze optie om de PHP-configuratie tijdens runtime te wijzigen, bijvoorbeeld om extensies in te schakelen. De volgende extensies zijn vereist:
runtime:
extensions:
- xsl
- newrelic
- sodium
Zie PHP montagesvoor details over het toelaten van uitbreidingen.
disk
Definieert de permanente schijfgrootte van de toepassing in MB.
disk: 5120
De minimale aanbevolen schijfgrootte is 256 MB. Als de fout UserError: Error building the project: Disk size may not be smaller than 128MB
wordt weergegeven, vergroot u de grootte tot 256 MB.
mounts
en disk
configuratie voor uw toepassing bij te werken. Wanneer u het ticket verzendt, geeft u de vereiste configuratiewijzigingen aan en neemt u een bijgewerkte versie van het .magento.app.yaml
-bestand op.relationships
Definieert de servicetoewijzing in de toepassing.
De relatie name
is beschikbaar voor de toepassing in de omgevingsvariabele MAGENTO_CLOUD_RELATIONSHIPS
. De <service-name>:<endpoint-name>
-relatie wordt toegewezen aan de naam en typewaarden die zijn gedefinieerd in het .magento/services.yaml
-bestand.
relationships:
<name>: "<service-name>:<endpoint-name>"
Hieronder ziet u een voorbeeld van de standaardrelaties:
relationships:
database: "mysql:mysql"
redis: "redis:redis"
opensearch: "opensearch:opensearch"
rabbitmq: "rabbitmq:rabbitmq"
Zie 🔗 de Diensten van 0} {voor een volledige lijst van momenteel gesteunde de diensttypes en eindpunten.
mounts
Een object waarvan de sleutels paden zijn die relatief zijn ten opzichte van de hoofdmap van de toepassing. De koppeling is een beschrijfbaar gebied op de schijf voor bestanden. Hieronder volgt een standaardlijst met toewijzingen die in het magento.app.yaml
-bestand worden geconfigureerd met de syntaxis van volume_id[/subpath]
:
# 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"
De indeling voor het toevoegen van de hoeveelheid aan deze lijst is als volgt:
"/public/sites/default/files": "shared:files/files"
shared
- Deel een volume tussen uw toepassingen binnen een omgeving.disk
- Hiermee definieert u de grootte die beschikbaar is voor het gedeelde volume.
mounts
en disk
configuratie voor uw toepassing bij te werken. Wanneer u het ticket verzendt, geeft u de vereiste configuratiewijzigingen aan en neemt u een bijgewerkte versie van het .magento.app.yaml
-bestand op.U kunt het koppelingsweb toegankelijk maken door het toe te voegen aan het web
-blok met locaties.
subpath
-gedeelte van de montagenaam als uw site gegevens bevat. Deze waarde is de unieke id voor het files
-gebied. Als u deze naam wijzigt, gaan alle sitegegevens verloren die op de oude locatie zijn opgeslagen.access
De eigenschap access
geeft een minimale gebruikersrolniveau aan dat SSH-toegang tot de omgevingen wordt toegestaan. De beschikbare gebruikersrollen zijn:
admin
- kan montages veranderen en acties in het milieu uitvoeren; heeft contribuant en kijker rechten.contributor
- kan code aan dit milieu duwen en zich van het milieu vertakken; heeft kijker rechten.viewer
- Kan alleen de omgeving weergeven.
De standaardgebruikersrol is contributor
, die de toegang van SSH van gebruikers met slechts kijker rechten beperkt. U kunt de gebruikersrol in viewer
veranderen om de toegang van SSH voor gebruikers met slechts kijker rechten toe te staan:
access:
ssh: viewer