アプリケーション設定のプロパティ
.magento.app.yaml
ファイルは、プロパティを使用して、Commerce アプリケーションの環境サポートを管理します。
パス:
"var": "shared:files/var"
"app/etc": "shared:files/etc"
"pub/media": "shared:files/media"
"pub/static": "shared:files/static"
サービス:
database: "mysql:mysql"
redis: "redis:redis"
opensearch: "opensearch:opensearch"
name
name
プロパティは、HTTP アップストリームを定義するために routes.yaml
ファイルで使用されるアプリケーション名を提供します(デフォルトでは mymagento:http
)。 例えば、name
の値が app
の場合、アップストリームフィールドで app:http
を使用する必要があります。
type
と build
type
プロパティと build
プロパティは、プロジェクトをビルドして実行するためのベースコンテナイメージに関する情報を提供します。
サポートしている type
言語は PHP です。 PHP のバージョンを次のように指定します。
type: php:<version>
build
プロパティは、プロジェクトの構築時のデフォルトの動作を決定します。 flavor
は、実行するビルドタスクのデフォルトセットを指定します。 次の例は、magento-cloud/.magento.app.yaml
の type
と build
のデフォルト設定を示しています。
# The toolstack used to build the application.
type: php:8.3
build:
flavor: none
dependencies:
php:
composer/composer: '2.7.2'
Composer 2 のインストールと使用
build: flavor:
プロパティは Composer 2.x では使用されないので、ビルド フェーズ中に Composer を手動でインストールする必要があります。 Composer 2.x を Starter プロジェクトおよび Pro プロジェクトにインストールして使用するには、.magento.app.yaml
の設定に 3 つの変更を加える必要があります。
composer
をbuild: flavor:
として削除し、none
を追加します。 この変更により、Cloud ではデフォルトの 1.x バージョンの Composer を使用してビルド タスクを実行できなくなります。- Composer 2.x をインストールする場合は、
php
の依存関係としてcomposer/composer: '^2.0'
を追加します。 - Composer 2.x を使用してビルド タスクを実行するには、
composer
ビルド タスクをbuild
フックに追加します。
独自の .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
Composer の詳細については、 必須パッケージを参照してください。
dependencies
ビルドプロセス中にアプリケーションで必要になる可能性のある依存関係を指定します。
Adobe Commerceは、次の言語の依存関係をサポートしています。
- PHP
- Ruby
- Node.js
これらの依存関係はアプリケーションの最終的な依存関係には依存せず、PATH
、ビルドプロセス中およびアプリケーションのランタイム環境で利用できます。
これらの依存関係は、次のように指定できます。
ruby:
sass: "~3.4"
nodejs:
grunt-cli: "~0.3"
runtime
を使用して、拡張機能の有効化など、実行時に PHP 設定を変更します。 次の拡張機能が必要です。
runtime:
extensions:
- xsl
- newrelic
- sodium
拡張機能の有効化について詳しくは、PHP 設定を参照してください。
disk
アプリケーションの永続ディスクサイズを MB 単位で定義します。
disk: 5120
推奨される最小ディスクサイズは 256 MB です。 UserError: Error building the project: Disk size may not be smaller than 128MB
というエラーが表示される場合は、サイズを 256 MB に増やします。
mounts
定と disk
定を更新する必要があります。 チケットを送信する際には、必要な設定変更を指定し、.magento.app.yaml
ファイルの更新バージョンを含めます。relationships
アプリケーションでサービスマッピングを定義します。
関係 name
は、MAGENTO_CLOUD_RELATIONSHIPS
環境変数でアプリケーションが使用できます。 <service-name>:<endpoint-name>
関係は、.magento/services.yaml
ファイルで定義された名前とタイプの値にマッピングされます。
relationships:
<name>: "<service-name>:<endpoint-name>"
デフォルトの関係の例を次に示します。
relationships:
database: "mysql:mysql"
redis: "redis:redis"
opensearch: "opensearch:opensearch"
rabbitmq: "rabbitmq:rabbitmq"
現在サポートされているサービスタイプとエンドポイントの完全なリストについては、 サービスを参照してください。
mounts
キーがアプリケーションのルートに対する相対パスであるオブジェクト。 マウントは、ファイルのディスク上の書き込み可能な領域です。 volume_id[/subpath]
の構文を使用して magento.app.yaml
ファイルに設定されるマウントのデフォルトのリストを以下に示します。
# 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"
このリストにマウントを追加する形式は、次のとおりです。
"/public/sites/default/files": "shared:files/files"
shared
:環境内のアプリケーション間でボリュームを共有します。disk
– 共有ボリュームに使用できるサイズを定義します。
mounts
定と disk
定を更新する必要があります。 チケットを送信する際には、必要な設定変更を指定し、.magento.app.yaml
ファイルの更新バージョンを含めます。マウント web を web
の場所のブロックに追加すると、そのマウント web にアクセスできるようになります。
subpath
の部分は変更しないでください。 この値は、files
領域の一意の ID です。 この名前を変更すると、古い場所に保存されているすべてのサイト データが失われます。access
access
プロパティは、環境への SSH アクセスが許可されている最小ユーザー役割レベルを示します。 使用できるユーザーの役割は次のとおりです。
admin
– 設定を変更し、環境内でアクションを実行できます。contributor および viewer 権限があります。contributor
- コードをこの環境にプッシュし、環境から分岐できます。ビューア 権限があります。viewer
– 環境のみを表示できます。
デフォルトのユーザーの役割は contributor
で、viewer 権限のみを持つユーザーからの SSH アクセスを制限しています。 ユーザーの役割を viewer
に変更して、viewer 権限のみを持つユーザーに対して SSH アクセスを許可できます。
access:
ssh: viewer