App Runner 配置文件示例 - AWS App Runner

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

App Runner 配置文件示例

注意

配置文件仅适用于基于源代码的服务。您不能将配置文件用于基于图像的服务

以下示例演示了 AWS App Runner 配置文件。有些是最低限度的,仅包含必需的设置。其他部分已完成,包括所有配置文件部分。有关 App Runner 配置文件的概述,请参阅使用配置文件设置 App Runner 服务选项

配置文件示例

使用最少的配置文件,App Runner 会做出以下假设:

  • 在构建或运行期间不需要自定义环境变量。

  • 使用最新的运行时版本。

  • 使用默认端口号和端口环境变量。

例 apprunner.yaml
version: 1.0 runtime: python3 build: commands: build: - pip install pipenv - pipenv install run: command: python app.py

此示例显示了在托管运行时中使用apprunner.yaml原始格式的所有配置密钥的情况。

例 apprunner.yaml
version: 1.0 runtime: python3 build: commands: pre-build: - wget -c https://s3.amazonaws.com/amzn-s3-demo-bucket/test-lib.tar.gz -O - | tar -xz build: - pip install pipenv - pipenv install post-build: - python manage.py test env: - name: DJANGO_SETTINGS_MODULE value: "django_apprunner.settings" - name: MY_VAR_EXAMPLE value: "example" run: runtime-version: 3.7.7 command: pipenv run gunicorn django_apprunner.wsgi --log-file - network: port: 8000 env: MY_APP_PORT 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"

此示例说明如何使用托管运行时中的apprunner.yaml所有配置密钥。

只有修订后的 App Runner 版本支持该pre-run参数。如果您的应用程序使用原始 App Runner 版本支持的运行时版本,请不要在配置文件中插入此参数。有关更多信息,请参阅 托管运行时版本和 App Runner 版本

注意

由于此示例适用于 Python 3.11,因此我们使用pip3python3命令。有关更多信息,请参阅 Python 平台主题特定运行时版本的标注中的。

例 apprunner.yaml
version: 1.0 runtime: python311 build: commands: pre-build: - wget -c https://s3.amazonaws.com/amzn-s3-demo-bucket/test-lib.tar.gz -O - | tar -xz build: - pip3 install pipenv - pipenv install post-build: - python3 manage.py test env: - name: DJANGO_SETTINGS_MODULE value: "django_apprunner.settings" - name: MY_VAR_EXAMPLE value: "example" run: runtime-version: 3.11 pre-run: - pip3 install pipenv - pipenv install - python3 copy-global-files.py command: pipenv run gunicorn django_apprunner.wsgi --log-file - network: port: 8000 env: MY_APP_PORT 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"

有关特定托管运行时配置文件的示例,请参阅下基于代码的服务方的特定运行时副主题。