Propiedades para la configuración de aplicaciones

El .magento.app.yaml utiliza propiedades para administrar la compatibilidad del entorno con el Commerce aplicación.

Nombre
Descripción
Predeterminado
Requerido
access
Personalizar funciones de usuario
No
crons
Actualizar especificaciones y programar trabajos cron
No
dependencies
Habilitar dependencias adicionales
php:composer/composer: '2.2.4'
No
disk
Definir el tamaño del disco persistente
5120
firewall
(Solo Starter) Controlar el tráfico saliente
No
hooks
Personalice los comandos del shell para las fases de compilación, implementación y posterior a la implementación
No
mounts
Definir rutas

Rutas:

  • "var": "shared:files/var"
  • "app/etc": "shared:files/etc"
  • "pub/media": "shared:files/media"
  • "pub/static": "shared:files/static"
No
name
Definición del nombre de la aplicación
mymagento
relationships
Servicios de mapa

Servicios:

  • database: "mysql:mysql"
  • redis: "redis:redis"
  • opensearch: "opensearch:opensearch"
No
runtime
La propiedad Runtime incluye extensiones que requiere el Commerce aplicación.

Extensiones:

  • xsl
  • newrelic
  • sodium
type
Establecer la imagen del contenedor base
php:8.3
variables
Aplicar una variable de entorno para una versión específica de Commerce
No
web
Gestión de solicitudes externas
workers
Gestión de solicitudes externas
Sí, si no se utiliza la propiedad web

name

El name proporciona el nombre de la aplicación utilizado en la propiedad routes.yaml para definir el flujo ascendente HTTP (de forma predeterminada), mymagento:http). Por ejemplo, si el valor de name es app, debe utilizar app:http en el campo upstream.

WARNING
No cambie el nombre de la aplicación después de implementarla. Al hacerlo, se pierden datos.

type y build

El type y build las propiedades proporcionan información sobre la imagen del contenedor base para generar y ejecutar el proyecto.

El compatible type el lenguaje es PHP. Especifique la versión de PHP de la siguiente manera:

type: php:<version>

El build determina qué sucede de forma predeterminada al crear el proyecto. El flavor especifica un conjunto predeterminado de tareas de generación para ejecutar. El siguiente ejemplo muestra la configuración predeterminada para type y build de 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'

Instalación y uso de Composer 2

El build: flavor: La propiedad no se utiliza para Composer 2.x; por lo tanto, debe instalar Composer manualmente durante la fase de compilación. Para instalar y utilizar Composer 2.x en sus proyectos de Starter y Pro, debe realizar tres cambios en su .magento.app.yaml configuración:

  1. Eliminar composer como el build: flavor: y agregue none. Este cambio evita que Cloud use la versión predeterminada 1.x de Composer para ejecutar tareas de compilación.
  2. Añadir composer/composer: '^2.0' as a php para instalar Composer 2.x.
  3. Añada el composer crear tareas en una build enlace para ejecutar las tareas de compilación utilizando Composer 2.x.

Utilice los siguientes fragmentos de configuración por su cuenta .magento.app.yaml configuración:

# 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 Paquetes necesarios para obtener más información sobre Composer.

dependencies

Especifique las dependencias que la aplicación pueda necesitar durante el proceso de generación.

Adobe Commerce admite dependencias en los siguientes idiomas:

  • PHP
  • Rubí
  • Node.js

Estas dependencias son independientes de las dependencias finales de la aplicación y están disponibles en el PATH, durante el proceso de compilación y en el entorno de tiempo de ejecución de la aplicación.

Puede especificar esas dependencias de la siguiente manera:

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

runtime

Use para modificar la configuración de PHP en tiempo de ejecución, como habilitar extensiones. Se requieren las siguientes extensiones:

runtime:
    extensions:
        - xsl
        - newrelic
        - sodium

Consulte Configuración de PHP para obtener más información sobre la activación de extensiones.

disk

Define el tamaño del disco persistente de la aplicación en MB.

disk: 5120

El tamaño mínimo de disco recomendado es de 256 MB. Si ve el error UserError: Error building the project: Disk size may not be smaller than 128MB, aumente el tamaño a 256 MB.

NOTE
Para los entornos de ensayo y producción de Pro, debe Enviar un ticket de asistencia de Adobe Commerce para actualizar el mounts y disk para su aplicación. Cuando envíe el ticket, indique los cambios de configuración necesarios e incluya una versión actualizada de su .magento.app.yaml archivo.

relationships

Define la asignación de servicios en la aplicación.

La relación name está disponible para la aplicación en el MAGENTO_CLOUD_RELATIONSHIPS variable de entorno. El <service-name>:<endpoint-name> la relación se asigna a los valores de nombre y tipo definidos en la variable .magento/services.yaml archivo.

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

A continuación se muestra un ejemplo de las relaciones predeterminadas:

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

Consulte Servicios para obtener una lista completa de los tipos de servicio y extremos admitidos actualmente.

mounts

Un objeto cuyas claves son rutas relativas a la raíz de la aplicación. El montaje es un área de escritura en el disco para archivos. A continuación se muestra una lista predeterminada de los montajes configurados en la magento.app.yaml usando el archivo volume_id[/subpath] sintaxis:

 # 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"

El formato para agregar el montaje a esta lista es el siguiente:

"/public/sites/default/files": "shared:files/files"
  • shared: permite compartir un volumen entre las aplicaciones dentro de un entorno.
  • disk: permite definir el tamaño disponible para el volumen compartido.
NOTE
Para los entornos de ensayo y producción de Pro, debe Enviar un ticket de asistencia de Adobe Commerce para actualizar el mounts y disk para su aplicación. Cuando envíe el ticket, indique los cambios de configuración necesarios e incluya una versión actualizada de su .magento.app.yaml archivo.

Puede hacer que la web de montaje sea accesible añadiéndola al web bloque de ubicaciones.

WARNING
Una vez que el sitio tenga datos, no cambie el subpath parte del nombre del montaje. Este valor es el identificador único del files área. Si cambia este nombre, perderá todos los datos del sitio almacenados en la ubicación antigua.

access

El access indica un nivel mínimo de función de usuario que puede acceder SSH a los entornos. Las funciones de usuario disponibles son:

  • admin: puede cambiar la configuración y ejecutar acciones en el entorno; tiene colaborador y visualizador derechos.
  • contributor: puede insertar código en este entorno y ramificarlo desde el entorno; tiene visualizador derechos.
  • viewer: sólo se puede ver el entorno.

La función de usuario predeterminada es contributor, que restringe el acceso SSH de los usuarios con solo visualizador derechos. Puede cambiar la función de usuario a viewer para permitir el acceso SSH solo a los usuarios con visualizador derechos:

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