[PaaS のみ]{class="badge informative" title="Adobe Commerce on Cloud プロジェクト(Adobeが管理する PaaS インフラストラクチャ)およびオンプレミスプロジェクトにのみ適用されます。"}

リモートストレージの設定

リモートストレージモジュールには、メディアファイルを保存し、AWS S3などのストレージサービスを使用して、永続的なリモートストレージコンテナに読み込みと書き出しをスケジュールするオプションが用意されています。

デフォルトでは、Adobe Commerce アプリケーションは、アプリケーションを含む同じファイルシステムにメディアファイルを保存します。 これは、複雑なマルチサーバー設定では非効率的であり、リソースを共有する際にパフォーマンスが低下する可能性があります。 リモートストレージモジュールを使用すると、メディアファイルをpub/media ディレクトリに保存し、リモートオブジェクトストレージのvar ディレクトリにファイルを読み込みおよび書き出しして、サーバーサイドの画像サイズを活用できます。

recommendation-more-help

リモート ストレージ データベース ストレージの両方を同時に有効にすることはできません。 リモート・ストレージを有効にする前に、データベース・ストレージを無効にする必要があります。

bin/magento config:set system/media_storage_configuration/media_database 0

リモートストレージを有効にすると、既存の開発エクスペリエンスに影響する可能性があります。 例えば、特定のPHP ファイル関数が期待どおりに動作しない場合があります。 ファイル操作に対するCommerce Frameworkの使用を強制する必要があります。 禁止されているPHP ネイティブ関数のリストは、magento-coding-standard リポジトリで入手できます。

INFO
  • リモートストレージは、Commerce バージョン 2.4.2以降でのみ使用できます。 2.4.2 リリースノート ​を参照してください。

  • リモート ストレージ モジュールは、クラウド インフラストラクチャ上のAdobe Commerceで​_制限付き_ サポートされています。 Adobeでは、サードパーティ製ストレージアダプターサービスのトラブルシューティングを完全に実行できません。 クラウドプロジェクトにリモートストレージを実装するガイダンスについては、Commerce on Cloud インフラストラクチャのリモートストレージの設定を参照してください。

ローカルストレージとクラウドストレージの関係を示すリモートストレージ設定スキーマ図

リモートストレージオプション

setup CLI コマンド ​を使用して、remote-storage オプションを使用してリモート ストレージを設定できます。 remote-storage オプションでは、次の構文を使用します。

--remote-storage-<parameter-name>="<parameter-value>"

parameter-nameは、特定のリモート ストレージ パラメーター名を参照しています。 次の表に、リモートストレージの設定に使用できるパラメーターを示します。

コマンドラインパラメーター
パラメーター名
説明
デフォルト値
remote-storage-driver
ドライバー
アダプタ名
可能な値:
ファイル:リモートストレージを無効にし、ローカルファイルシステムを使用します​
aws-s3: Amazon Simple Storage Service (Amazon S3)を使用します
なし
remote-storage-bucket
バケット
オブジェクトストレージまたはコンテナ名
なし
remote-storage-prefix
接頭辞
オプションの接頭辞(オブジェクトストレージ内の場所)
empty
remote-storage-region
地域
地域名
なし
remote-storage-key
アクセスキー
オプションのアクセスキー
empty
remote-storage-secret
秘密鍵
オプションの秘密鍵
empty

ストレージアダプター

デフォルトのストレージの場所は、ローカルのファイルシステムにあります。 ストレージアダプタ​を使用すると、ストレージサービスに接続し、ファイルを任意の場所に保存できます。 Commerceは、次のストレージ サービスの設定をサポートしています:

リモートストレージの有効化

Adobe Commerceのインストール中にリモートストレージをインストールしたり、既存のCommerce インスタンスにリモートストレージを追加したりできます。 次の例では、Commerce setup CLI コマンドでremote-storage パラメーターのセットを使用して各メソッドを示します。 最低限、ストレージ driverbucketregionを指定する必要があります。

  • 例:リモートストレージを使用したCommerceのインストール

    code language-shell
    bin/magento setup:install --remote-storage-driver="aws-s3" --remote-storage-bucket="myBucket" --remote-storage-region="us-east-1"
    
  • 例:既存のCommerceでリモートストレージを有効にする

    code language-shell
    bin/magento setup:config:set --remote-storage-driver="aws-s3" --remote-storage-bucket="myBucket" --remote-storage-region="us-east-1"
    
TIP
クラウド インフラストラクチャ上のAdobe Commerceについては、​ クラウド インフラストラクチャ上のCommerceのリモート ストレージの設定を参照してください。

コンテンツの移行

特定のアダプタのリモートストレージを有効にした後、CLIを使用して、既存の​media ファイルをリモートストレージに移行できます。

./magento2ce/bin/magento remote-storage:sync
INFO
同期コマンドは、pub/media ディレクトリ内のファイルのみを移行します。not ファイルはvar ディレクトリ内のインポート/エクスポート ファイルです。 Commerce 2.4 ユーザーガイド​の「​ スケジュールされた読み込み/書き出し」を参照してください。
386822bd-e32c-40a8-81c2-ed90ad1e198c