Commerce on Cloud インフラストラクチャのリモートストレージの設定
ece-tools パッケージ 2002.1.5以降では、環境変数を使用してリモートストレージモジュールを有効にできますが、リモートストレージモジュールでは、Adobe Commerce on cloud infrastructureで 制限 がサポートされています。 Adobeでは、サードパーティ製ストレージアダプターサービスのトラブルシューティングを完全に実行できません。
環境変数
REMOTE_STORAGE変数は、クラウドインフラストラクチャプロジェクトの デプロイメントフェーズ 中に使用されます。
REMOTE_STORAGE
- 既定—設定なし
- バージョン - Commerce 2.4.2以降
AWS S3などのストレージサービスを使用して、永続的なリモートストレージコンテナにメディアファイルを保存するように ストレージアダプタ を設定します。 リモートストレージモジュールを有効にして、リソースを共有する必要がある複雑なマルチサーバー設定を使用して、クラウドプロジェクトのパフォーマンスを向上させます。 次に、.magento.env.yaml ファイルを使用したリモートストレージ設定の例を示します。
stage:
deploy:
REMOTE_STORAGE:
driver: aws-s3 # Required
prefix: cloud # Optional
config:
bucket: my-bucket # Required
region: my-region # Required
key: my-key # Optional
secret: my-secret-key # Optional
Cloud CLIでの変数の設定
実稼動環境、ステージング環境、統合環境間でファイルが共有されないように、REMOTE_STORAGE変数を環境レベル変数として設定します。 環境レベルで変数を設定すると、リモートストレージの統合環境の使用を除外するなど、一部の環境でリモートストレージのみを使用する柔軟性が得られます。
Cloud CLIを使用してリモートストレージ変数を追加するには:
magento-cloud variable:create --level environment --name REMOTE_STORAGE --json true --inheritable false --value '{"driver":"aws-s3","prefix":"uat","config":{"bucket":"aws-bucket-id","region":"eu-west-1","key":"optional-key","secret":"optional-secret"}}'
これにより、指定されたJSON設定でREMOTE_STORAGE変数が作成されます。 REMOTE_STORAGE変数は、JSON文字列を使用してリモートストレージを設定します。 次に、JSON設定の例を示します。
{
"driver": "aws-s3",
"prefix": "uat",
"config": {
"bucket": "aws-bucket-id",
"region": "aws-region-id",
"key": "optional-key",
"secret": "optional-secret"
}
}
設定を作成してデプロイした後、デプロイメントログには、リモートストレージ設定(例:INFO: Remote storage driver set to: "aws-s3")に関する情報が含まれている必要があります
Project Web Interfaceで変数を設定
または、Project Web Interfaceを使用して、変数を適切な環境に追加することもできます。
Project Web Interfaceを使用してリモート ストレージ変数を追加するには:
-
Project Web Interfaceで、左側から環境を選択します。
-
環境の設定 アイコンをクリックします。
-
環境の設定 ビューで、「変数」タブをクリックします。
-
「変数を追加」をクリックします。
-
名前 フィールドに、
REMOTE_STORAGEと入力します -
値 フィールドにJSON設定を追加します。
-
JSON値と 機密性 を選択し、子環境による継承の選択を解除します。
-
「変数を追加」をクリックします。
オプションの認証を使用
keyとsecretはオプションです。 変数を作成する場合、sensitive オプションを選択してkeyとsecretを非表示にできます。 この設定では、値はweb インターフェイスに表示されません。 Commerce on Cloud Infrastructure ガイドの変数表示を参照してください。
別の認証方法を使用する場合は、JSON設定からkeyとsecretを省略します。 別の認証方法を設定し、サーバーがS3 バケットに対して許可されていることを確認します。
リモートストレージの同期
リモートストレージモジュールを有効にした後、現在のメディアファイルをリモートストアの場所に同期します。
同期を開始するには:
-
SSHを使用して、リモートストレージが設定されたリモート環境にログインします。
-
同期を開始します。
bin/magento remote-storage:sync
Fastly設定
Adobe Commerce on cloud インフラストラクチャプロジェクトでリモートストレージソリューションを使用する場合は、Fastly ドキュメントのAmazon S3 ガイダンスを使用して、Fastly Image OptimizationがAWS S3で動作することを確認してください。
Fastlyの資格情報を使用して準備してください。 Pro プロジェクトでは、SSHを使用してサーバーに接続し、/mnt/shared/fastly_tokens.txt ファイルからFastlyの資格情報を取得します。 ステージング環境と実稼動環境には一意の資格情報があります。 各環境の資格情報を取得する必要があります。
次のタスクを使用して、クラウドプロジェクトのリモートストレージの設定を続行します。
-
Fastly バックエンド統合を設定します。
-
AWS S3認証のVCL ロジックを作成します。
-
AWS S3 バケット 🔗に対する バックエンドリクエストのVCL ロジックを作成します。