デプロイメントの概要

これらのトピックでは、Adobe Commerce バージョン 2.2 以降を使用する実稼動サイトにCommerce アプリケーションをデプロイするプロセスについて説明します。 Adobeでは、大規模なサイトを持ち、デプロイメント中のダウンタイムを望まないユーザーには、このデプロイメント方法をお勧めします。

Commerceを 1 台のマシンにデプロイする場合に、デプロイ中のダウンタイムが許容される可能性がある場合は、以下を参照してください。 単一マシンの導入.

パイプラインデプロイメント

Commerce バージョン 2.2 では、Adobeが導入されました パイプラインデプロイメント ダウンタイムを最小限に抑えながら実稼動環境にデプロイする新しい方法として このデプロイメントプロセスは異なるシステムで行われ、すべてのパイプラインデプロイメントシステムで一貫した設定を維持する手段を提供します。 これは、通常の構成設定を、システム固有の設定(ホストやポートなど)や重要な設定(名前やパスワードなど)から分離できる、シンプルで強力なモデルです。

パイプラインデプロイメントを使用するために、Adobeでは以下を行うことを前提としています。

  • Adobe Commerceの設定オプションに関する優れた知識を持つ、経験豊富なシステムインテグレーター。
  • 大規模なCommerce サイト(何千もの在庫管理単位(SKU))を管理していて、実稼動サイトのダウンタイムを最小限に抑えたい。
  • PHP プログラミングに関する知識。
  • ソース管理メソッドの使用経験があります。
  • コードはソース管理リポジトリーにあります。 このガイドでは、Git ベースのリポジトリを使用していることを前提としています。

ダウンタイムの短縮

静的アセットをデプロイし、実稼動システムとは別のマシンでコードをコンパイルする場合は、ダウンタイムを最小限に抑えることができます。 実稼動システムのダウンタイムは、静的ファイルとコンパイル済みコードをサーバーに転送するのに必要な時間に制限されます。

デプロイメントシステム

デプロイメントに関連するシステムを説明するために、以下の用語を使用します。

  • 開発システム – デベロッパーがコードをカスタマイズし、Commerce Marketplaceから拡張機能、テーマ、言語パッケージをインストールするマシン。 さらに、開発システム上のすべての設定変更を行います。 多くの開発システムを用意できます。

  • システムを構築 – 静的アセットをデプロイし、実稼動システムのコードをコンパイルする 1 つのシステム。 これらのアセットは実稼動環境にないシステムで構築するので、実稼動システムのダウンタイムは最小限に抑えられます。

    お使いのビルドシステムには、Commerceがインストールされている必要はありません。 必要なのはCommerce コードのみですが、データベース接続は不要です。 また、ビルドシステムを物理的に別のサーバーにする必要はありません。

  • ステージングシステムオプション. オプションで、ユーザー受け入れテスト(UAT)を含む、すべての統合コードの最終テストに使用するステージングシステムを設定できます。 実稼動システムをセットアップするのと同じ方法で、ステージングシステムをセットアップします。 ステージングがライブストアではなく、顧客からの注文を処理しないという事実を除き、実稼動環境と同じです。

  • 生産システム – ライブストアですね。 ここで直接設定の変更を最小限に抑える必要があります。ただし、ステージングインスタンスでテストされていない変更は特にしないでください。 可能な場合、次のコマンドで設定を変更します。 データパッチ ステージング/開発インスタンスでテスト済み。

その他のデプロイメント方法

オプションで、次のような他のデプロイメント方法を使用できます。

設定の管理

後のモデリング 12 要素アプリのデザインの要素 3Commerceは、各システムの設定をシステム自体に保存するようになりました。 (開発構成設定は開発システムに格納され、実稼働設定は実稼働システムに格納されます。)

システムの設定を同期する方法を次に示します。

  • 共有設定- システム固有でも機密でもない設定。

    共有設定は、開発システムと実稼動システムで一貫性を持たせるための設定です。 開発環境(またはクラウドインフラストラクチャー上のAdobe Commerce)の管理者で、共有設定を指定します 統合) システム。

    共有設定ファイル、 app/etc/config.phpを開発、ビルド、実稼動の各システム間で共有できるように、ソース管理に含める必要があります。

  • システム固有の設定 – 検索エンジンのホスト名やポートなど、システムによって異なる設定。

  • 機密性の高い設定 – 実行する設定 ではない 個人を特定できる情報(PII)や、API キーやパスワードなどの設定が公開されるので、ソース管理の下に置いてください。

    システム固有の設定ファイル app/etc/env.php、は、 ではない ソース管理に含めるか、システム間で共有する。 代わりに、を使用します magento config:set および magento:sensitive:set コマンド 実稼動システムでこれらの設定の値を指定する必要があります。

INFO
設定を管理するこれらの新しい方法は、オプションです。 必須ではありませんが、使用することを強くお勧めします。

共有、システム固有、機密の設定で設定した設定オプションは、ほとんどの場合、管理者で編集できません。 これにより、すべてのシステムで設定の一貫性を維持できます。 (オプションで、 magento config:set コマンド なし --lock 管理者で編集可能な設定を指定するオプション)。

各Commerce設定オプションには一意のものがあります 設定パス. 設定オプションの値を設定するには、CLI コマンドまたは環境変数を使用して、特定のシステム上のその設定パスの値を設定します。

recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c