Propriedades para configuração de aplicativo
O arquivo .magento.app.yaml usa propriedades para gerenciar o suporte ao ambiente para o aplicativo Commerce.
Caminhos:
"var": "shared:files/var""app/etc": "shared:files/etc""pub/media": "shared:files/media""pub/static": "shared:files/static"
Serviços:
database: "mysql:mysql"redis: "redis:redis"opensearch: "opensearch:opensearch"
Extensões:
xslnewrelicsodium
name
A propriedade name fornece o nome do aplicativo usado no arquivo routes.yaml para definir o upstream de HTTP (por padrão, mymagento:http). Por exemplo, se o valor de name for app, você deverá usar app:http no campo de upstream.
type e build
As propriedades type e build fornecem informações sobre a imagem de contêiner base para compilar e executar o projeto.
A linguagem type com suporte é PHP. Especifique a versão do PHP da seguinte maneira:
type: php:<version>
A propriedade build determina o que acontece por padrão ao compilar o projeto. O flavor especifica um conjunto padrão de tarefas de compilação a serem executadas. O exemplo a seguir mostra a configuração padrão para type e build de magento-cloud/.magento.app.yaml:
# The toolstack used to build the application.
type: php:8.4
build:
flavor: none
dependencies:
php:
composer/composer: '2.7.2'
Instalação e uso do Composer 2
A propriedade build: flavor: não é usada para o Composer 2.x; portanto, você deve instalar o Composer manualmente durante a fase de compilação. Para instalar e usar o Composer 2.x em seus projetos Starter e Pro, você deve fazer três alterações na configuração do .magento.app.yaml:
- Remover
composercomobuild: flavor:e adicionarnone. Essa alteração impede que a Cloud use a versão 1.x padrão do Composer para executar tarefas de build. - Adicione
composer/composer: '^2.0'como uma dependênciaphppara instalar o Composer 2.x. - Adicione as tarefas de compilação
composera um ganchobuildpara executar as tarefas de compilação usando o Composer 2.x.
Usar os seguintes fragmentos de configuração na sua própria configuração do .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
Consulte Pacotes obrigatórios para obter mais informações sobre o Composer.
dependencies
Especifique as dependências que seu aplicativo pode precisar durante o processo de compilação.
O Adobe Commerce oferece suporte a dependências nos seguintes idiomas:
- PHP
- Ruby
- Node.js
Essas dependências são independentes das eventuais dependências do aplicativo e estão disponíveis no PATH, durante o processo de compilação e no ambiente de tempo de execução do aplicativo.
Você pode especificar essas dependências da seguinte maneira:
ruby:
sass: "~3.4"
nodejs:
grunt-cli: "~0.3"
runtime
Use para modificar a configuração do PHP no tempo de execução, como habilitar extensões. As seguintes extensões são necessárias:
runtime:
extensions:
- xsl
- newrelic
- sodium
Consulte configurações do PHP para obter detalhes sobre como habilitar extensões.
disk
Define o tamanho de disco persistente do aplicativo em MB.
disk: 5120
O tamanho de disco mínimo recomendado é de 256 MB. Se você vir o erro UserError: Error building the project: Disk size may not be smaller than 128MB, aumente o tamanho para 256 MB.
mounts e disk para o seu aplicativo. Ao enviar o tíquete, indique as alterações de configuração necessárias e inclua uma versão atualizada do arquivo .magento.app.yaml.relationships
Define o mapeamento de serviços no aplicativo.
A relação name está disponível para o aplicativo na variável de ambiente MAGENTO_CLOUD_RELATIONSHIPS. A relação <service-name>:<endpoint-name> mapeia para os valores name e type definidos no arquivo .magento/services.yaml.
relationships:
<name>: "<service-name>:<endpoint-name>"
Veja a seguir um exemplo das relações padrão:
relationships:
database: "mysql:mysql"
redis: "redis:redis"
opensearch: "opensearch:opensearch"
rabbitmq: "rabbitmq:rabbitmq"
Consulte Serviços para obter uma lista completa de tipos e endpoints de serviços suportados no momento.
mounts
Um objeto cujas chaves são caminhos relativos à raiz do aplicativo. O monte é uma área gravável no disco para arquivos. A seguir, uma lista padrão de montagens configuradas no magento.app.yaml arquivo usando a volume_id[/subpath] sintaxe:
# 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"
O formato para adicionar sua montagem a esta lista é o seguinte:
"/public/sites/default/files": "shared:files/files"
shared—Compartilha um volume entre seus aplicativos dentro de uma ambiente.disk— Define o tamanho disponível para o volume compartilhado.
disk a mounts configuração do seu aplicativo. Ao enviar o tíquete, indique as alterações de configuração necessárias e inclua uma versão atualizada do arquivo .magento.app.yaml .Você pode tornar a Web de montagem acessível adicionando-a ao web bloco de locais.
subpath parte do nome de montagem. Esse valor é o identificador exclusivo da files área. Se você alterar esse nome, perderá todos os dados do site armazenados no local antigo.access
A propriedade access indica um nível mínimo de função de usuário que tem acesso SSH permitido aos ambientes. As funções de usuário disponíveis são:
admin— Pode alterar configurações e executar ações no ambiente; tem direitos de colaborador e visualizador.contributor— Pode enviar código para este ambiente e ramificar do ambiente; tem direitos de visualizador.viewer— Pode exibir somente o ambiente.
A função de usuário padrão é contributor, que restringe o acesso SSH de usuários com apenas direitos de visualizador. Você pode alterar a função de usuário para viewer para permitir acesso SSH a usuários com direitos de apenas visualizador:
access:
ssh: viewer