Referencia del archivo de configuración de App Runner - AWS App Runner

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Referencia del archivo de configuración de App Runner

nota

Los archivos de configuración solo se aplican a los servicios que se basan en el código fuente. No puede usar archivos de configuración con servicios basados en imágenes.

Este tema es una guía de referencia completa sobre la sintaxis y la semántica de un archivo de AWS App Runner configuración. Para obtener información general sobre los archivos de configuración de App Runner, consulteConfiguración de las opciones de servicio de App Runner mediante un archivo de configuración.

El archivo de configuración de App Runner es un archivo YAML. apprunner.yamlAsígnele un nombre y colóquelo en el directorio fuente del repositorio de la aplicación.

Descripción general de la estructura

El archivo de configuración de App Runner es un archivo YAML. apprunner.yamlAsígnele un nombre y colóquelo en el directorio fuente del repositorio de la aplicación.

El archivo de configuración de App Runner contiene las siguientes partes principales:

  • Sección superior: contiene claves de nivel superior

  • Sección de compilación: configura la etapa de compilación

  • Sección de ejecución: configura la etapa de ejecución

Sección superior

Las teclas de la parte superior del archivo proporcionan información general sobre el archivo y el tiempo de ejecución del servicio. Están disponibles las siguientes claves:

  • versionNecesario. La versión del archivo de configuración de App Runner. Lo ideal es utilizar la última versión.

    Sintaxis

    version: version
    ejemplo
    version: 1.0
  • runtimeNecesario. El nombre del motor de ejecución que utiliza la aplicación. Para obtener información sobre los tiempos de ejecución disponibles para las distintas plataformas de programación que ofrece App Runner, consulteServicio App Runner basado en código fuente.

    nota

    La convención de nomenclatura de un tiempo de ejecución gestionado es. <language-name><major-version>

    Sintaxis

    runtime: runtime-name
    ejemplo
    runtime: python3

Sección de compilación

La sección de compilación configura la etapa de compilación de la implementación del servicio App Runner. Puede especificar los comandos de compilación y las variables de entorno. Los comandos de compilación son necesarios.

La sección comienza con la build: clave y tiene las siguientes subclaves:

  • commandsObligatorio. Especifica los comandos que App Runner ejecuta durante las distintas fases de creación. Incluye las siguientes subclaves:

    • pre-buildOpcional. Los comandos que App Runner ejecuta antes de la compilación. Por ejemplo, instala npm dependencias o prueba bibliotecas.

    • buildObligatorio. Los comandos que App Runner ejecuta para crear la aplicación. Por ejemplo, utilicepipenv.

    • post-buildOpcional. Los comandos que App Runner ejecuta después de la compilación. Por ejemplo, usa Maven para empaquetar los artefactos de compilación en un archivo JAR o WAR, o ejecuta una prueba.

    Sintaxis

    build: commands: pre-build: - command - build: - command - post-build: - command -
    ejemplo
    build: commands: pre-build: - yum install openssl build: - pip install -r requirements.txt post-build: - python manage.py test
  • envOpcional. Especifica las variables de entorno personalizadas para la etapa de compilación. Definido como mapeos escalares nombre-valor. Puedes hacer referencia a estas variables por su nombre en tus comandos de compilación.

    nota

    Hay dos env entradas distintas en dos ubicaciones diferentes de este archivo de configuración. Un conjunto se encuentra en la sección Construir y el otro en la sección Ejecutar.

    • Durante el proceso de compilaciónpre-build, se puede hacer referencia al env conjunto de la sección Construir mediante pre-run los comandos buildpost-build,, y.

      Importante: tenga en cuenta que los pre-run comandos se encuentran en la sección Ejecutar de este archivo, aunque solo pueden acceder a las variables de entorno que se definen en la sección Crear.

    • El run comando puede hacer referencia al env conjunto de la sección Ejecutar en el entorno de ejecución.

    Sintaxis

    build: env: - name: name1 value: value1 - name: name2 value: value2 -
    ejemplo
    build: env: - name: DJANGO_SETTINGS_MODULE value: "django_apprunner.settings" - name: MY_VAR_EXAMPLE value: "example"

Sección de ejecución

La sección de ejecución configura la etapa de ejecución del contenedor de la implementación de la aplicación App Runner. Puede especificar la versión en tiempo de ejecución, los comandos previos a la ejecución (solo en el formato revisado), el comando de inicio, el puerto de red y las variables de entorno.

La sección comienza con la run: clave y tiene las siguientes subclaves:

  • runtime-versionOpcional. Especifica la versión en tiempo de ejecución que deseas bloquear para tu servicio App Runner.

    De forma predeterminada, solo está bloqueada la versión principal. App Runner utiliza las versiones secundarias y de parche más recientes que están disponibles para el tiempo de ejecución en cada implementación o actualización de servicio. Si especificas las versiones principales y secundarias, ambas se bloquean y App Runner solo actualiza las versiones con parches. Si especificas las versiones principales, secundarias y de parche, el servicio se bloquea en una versión de tiempo de ejecución específica y App Runner nunca la actualiza.

    Sintaxis

    run: runtime-version: major[.minor[.patch]]
    nota

    Los tiempos de ejecución de algunas plataformas tienen componentes de versión diferentes. Consulte los temas específicos de la plataforma para obtener más información.

    ejemplo
    runtime: python3 run: runtime-version: 3.7
  • pre-runOpcional. Solo se revisó el uso de la compilación. Especifica los comandos que App Runner ejecuta después de copiar la aplicación de la imagen de compilación a la imagen de ejecución. Aquí puede introducir comandos para modificar la imagen de ejecución fuera del /app directorio. Por ejemplo, si necesita instalar dependencias globales adicionales que residan fuera del /app directorio, introduzca los comandos necesarios en esta subsección para hacerlo. Para obtener más información sobre el proceso de creación de App Runner, consulte. Versiones de tiempo de ejecución gestionadas y compilación de App Runner

    nota
    • Importante: aunque los pre-run comandos aparecen en la sección Ejecutar, solo pueden hacer referencia a las variables de entorno definidas en la sección Crear de este archivo de configuración. No pueden hacer referencia a las variables de entorno definidas en esta sección de ejecución.

    • El pre-run parámetro solo es compatible con la versión revisada de App Runner. No insertes este parámetro en el archivo de configuración si la aplicación usa versiones en tiempo de ejecución compatibles con la compilación original de App Runner. Para obtener más información, consulte Versiones de tiempo de ejecución gestionadas y compilación de App Runner.

    Sintaxis

    run: pre-run: - command -
  • commandNecesario. El comando que App Runner usa para ejecutar la aplicación después de completar la compilación de la aplicación.

    Sintaxis

    run: command: command
  • networkOpcional. Especifica el puerto que escucha la aplicación. Contiene lo siguiente:

    • portOpcional. Si se especifica, este es el número de puerto que escucha la aplicación. El valor predeterminado es 8080.

    • envOpcional. Si se especifica, App Runner pasa el número de puerto al contenedor en esta variable de entorno, además de (no en lugar de) pasar el mismo número de puerto en la variable de entorno predeterminadaPORT. En otras palabras, si lo especificaenv, App Runner pasa el número de puerto en dos variables de entorno.

    Sintaxis

    run: network: port: port-number env: env-variable-name
    ejemplo
    run: network: port: 8000 env: MY_APP_PORT
  • envOpcional. Definición de variables de entorno personalizadas para la etapa de ejecución. Definido como mapeos escalares nombre-valor. Puede hacer referencia a estas variables por su nombre en su entorno de ejecución.

    nota

    Hay dos env entradas distintas en dos ubicaciones diferentes de este archivo de configuración. Un conjunto se encuentra en la sección Construir y el otro en la sección Ejecutar.

    • Durante el proceso de compilaciónpre-build, se puede hacer referencia al env conjunto de la sección Construir mediante pre-run los comandos buildpost-build,, y.

      Importante: tenga en cuenta que los pre-run comandos se encuentran en la sección Ejecutar de este archivo, aunque solo pueden acceder a las variables de entorno que se definen en la sección Crear.

    • El run comando puede hacer referencia al env conjunto de la sección Ejecutar en el entorno de ejecución.

    Sintaxis

    run: env: - name: name1 value: value1 - name: name2 value: value2 secrets: - name: name1 value-from: arn:aws:secretsmanager:region:aws_account_id:secret:secret-id - name: name2 value-from: arn:aws:ssm:region:aws_account_id:parameter/parameter-name -
    ejemplo
    run: env: - name: MY_VAR_EXAMPLE value: "example" secrets: - name: my-secret value-from: "arn:aws:secretsmanager:us-east-1:123456789012:secret:testingstackAppRunnerConstr-kJFXde2ULKbT-S7t8xR:username::" - name: my-parameter value-from: "arn:aws:ssm:us-east-1:123456789012:parameter/parameter-name" - name: my-parameter-only-name value-from: "parameter-name"