CLI コマンドの使用例
この例では、共有された値、システム固有の値、機密の値を開発システムに設定し、それらの値を実稼動システムにデプロイする方法を示します。
これを行うには、共有設定、config.php
ファイル、Commerce CLI コマンドを組み合わせます。
この例では、次の設定を使用します。
-
共有構成設定の VAT 番号 および ストア名。
これらのプロパティは、ストア/設定/設定/一般/一般 にあります。
-
機密性の高い設定値に対する メールの送信先 ]。
これは、ストア/設定/設定/一般/連絡先 にあります。
-
システム固有の設定値の デフォルトのメールドメイン。
これは、ストア/設定/設定/顧客/顧客設定/新しいアカウントオプションを作成 にあります。
この例に示す同じ手順を使用して、次のリファレンスの設定を構成できます。
始める前に
開始する前に、「開発、ビルド、実稼働システムの前提条件 で説明されているように、ファイルシステムの権限と所有権を設定しす。
前提
このトピックでは、実稼動システム設定を変更する例を示します。 必要に応じて、別の設定オプションを選択できます。
この例では、以下を想定しています。
- Git ソース管理を使用します
- 開発システムは、
mconfig
という名前の Git リモートリポジトリーで使用できます - Git 作業ブランチの名前は
m2.2_deploy
です。
手順 1:開発システムでの設定
開発システムでデフォルトのロケールと重み付け単位を設定するには:
-
管理者にログインします。
-
ストア/設定/設定/一般/一般 をクリックします。
-
複数の Web サイトを使用できる場合は、左上隅の ストア表示 リストを使用して、次の図に示すように別の Web サイトに切り替えます。
-
右側のペインで、「Store Information」を展開します。
-
必要に応じて、「VAT 番号 および ストア名 フィールドの横にある「デフォルトを使用 チェックボックスをオフにします。
-
フィールドに数値を入力します(例:
12345
)。 -
ストア名 フィールドに、値(
My Store
など)を入力します。 -
「設定を保存」をクリックします。
-
左側のナビゲーションの一般で、連絡先 をクリックします。
-
右側のパネルで「メールオプション」を展開します。
-
必要に応じて、「メールの送信先 フィールドの横にある デフォルトを使用 チェックボックスをオフにします。
-
フィールドにメールアドレスを入力します。
-
「設定を保存」をクリックします。
-
次の図に示すように、「ストア表示」リストを使用して デフォルト設定 を選択します。
-
左側のウィンドウで、顧客/顧客設定 をクリックします。
-
右側のウィンドウで、「新しいアカウントのオプションの作成 を展開し す。
-
必要に応じて、「デフォルトのメールドメイン フィールドの横にある システム値を使用 チェックボックスをオフにします。
-
フィールドにドメイン名を入力します。
-
「設定を保存」をクリックします。
-
プロンプトが表示されたら、キャッシュをフラッシュします。
手順 2:設定を更新
管理者の設定を変更したので、次の手順を使用して共有設定をファイルに書き込みます。
設定を更新するには:
-
ファイルシステムの所有者として開発システムにログインするか、所有者に切り替えます。
-
アプリケーションルートに移動し、dump コマンドを実行します。
code language-bash cd <Magento root dir> php bin/magento app:config:dump
例えば、Commerceが
/var/www/html/magento2
にインストールされている場合は、次のように入力します。code language-bash cd /var/www/html/magento2 php bin/magento app:config:dump
-
app/etc/config.php
が更新されたことを確認します。code language-bash git status
応答の例:
code language-none On branch m2.2_deploy Changed but not updated: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: app/etc/config.php
note warning WARNING 変更をソース管理に対して generated
、pub/media
、またはpub/static
ディレクトリに送信 ない でください。 これらのファイルは、ビルドシステム上で生成します。 開発システムに、実稼動システムで使用する準備ができていないコードやテーマなどが含まれている可能性があります。 -
変更内容を「
app/etc/config.php
only to source control」にチェックインします。code language-bash git add app/etc/config.php && git commit -m "Updated shared configuration" && git push mconfig m2.2_deploy
app/etc/env.php
(システム固有の設定)は更新されましたが、ソース管理にチェックインしないでください。
実稼動システムでも、この手順の後半で同じ設定を作成します。
手順 3:ビルドシステムを更新しファイルを生成する
共有設定への変更をソース管理にコミットしたので、ビルドシステムにそれらの変更を取り込み、コードをコンパイルし、静的ファイルを生成できます。
ビルドシステムを更新するには:
-
ファイルシステムの所有者としてビルドシステムにログインします。
-
アプリケーションのルートディレクトリに移動します。
code language-bash cd <Magento root dir>
-
ソース管理から変更
app/etc/config.php
取り込みます。code language-bash git pull mconfig m2.2_deploy
-
コードをコンパイルします。
code language-bash bin/magento setup:di:compile
-
コードがコンパイルされたら、静的ビューファイルを生成します。
code language-bash bin/magento setup:static-content:deploy -f
-
ソース管理に対する変更を確認します。
code language-bash git add -A && git commit -m "Updated files on build system" && git push mconfig m2.2_deploy
手順 4:実稼動システムを更新する
プロセスの最後の手順は、実稼動システムを更新することです。 これは、次の 2 つの部分で行う必要があります。
- システム固有の機密情報の設定を更新する
- 共有設定を更新する
システム固有の機密情報の設定を更新する
環境変数を使用して機密性の高いシステム固有の設定を行うには、次の点を知っておく必要があります。
-
各設定の範囲
手順 1 の指示に従った場合、メールの送信先 の範囲は web サイトであり、デフォルトメールドメイン の範囲はグローバル(デフォルト設定範囲)です。
Send Emails To 設定値を設定するには、web サイトコードが必要です。
この値について詳しくは、 環境変数を使用して設定を上書きを参照してください。
-
この例で使用する設定の設定パス:
table 0-row-2 1-row-2 2-row-2 設定名 設定パス Send Emails To contact/email/recipient_email
デフォルトのメールドメイン customer/create_account/email_domain
機密およびシステム固有のすべての設定パスについては、「 機密およびシステム固有の設定パスのリファレンス」を参照してください。
CLI コマンドを使用して変数を設定する
次の CLI コマンドを使用して、システム固有の重要な構成設定を設定します。
- システム固有の設定の
magento config:set
- 機密性の高い設定の
magento config:sensitive:set
デフォルトの範囲にあるシステム固有の設定 デフォルトのメールドメイン を設定するには、次のコマンドを使用します。
bin/magento config:set customer/create_account/email_domain <email domain>
コマンドのスコープはデフォルトのスコープなので、使用する必要はありません。
ただし、メールの送信先 の値を設定するには、範囲のタイプ(website
)と範囲コードを知っておく必要があります。これは、サイトごとに異なる可能性があります。
例:
bin/magento config:sensitive:set contact/email/recipient_email --scope=website --scope-code=<website code> <email address>
共有設定を更新する
ここでは、開発環境およびビルドシステムで行ったすべての変更を実稼動環境に取り込む方法について説明します。この環境では、共有設定(ストア名と VAT 番号)を更新します。
実稼動システムを更新するには:
-
ファイルシステムの所有者として、実稼動システムにログインします。
-
アプリケーションルートに変更し、メンテナンスモードを有効にします。
code language-bash cd <Magento root dir>
code language-bash bin/magento maintenance:enable
IP アドレスの許可リストを設定する機能など、その他のオプションについては、
magento maintenance:enable
を参照してください。 -
app/etc/env.php
でcron_run
をfalse
に設定して、実行中のキューワーカーをすべて停止します。code language-php?start_inline=1 'cron_consumers_runner' => [ 'cron_run' => false ]
-
設定を更新します。
code language-bash bin/magento app:config:import
-
最後に、アクティブなコンシューマープロセスを
kill
きます。code language-bash kill <PID>
PID
は、強制終了されるプロセス ID です(例:)。code language-bash kill 1234
-
ソース管理からコードを取り込みます。
code language-bash git pull mconfig m2.2_deploy
-
設定を更新します。
code language-bash bin/magento app:config:import
-
キャッシュをクリーンアップします。
code language-bash bin/magento cache:clean
-
メンテナンスモードを終了します。
code language-bash bin/magento maintenance:disable
管理者で設定を確認
設定を確認するには:
-
実稼動システムの管理者にログインします。
-
ストア/設定/設定/一般/一般 をクリックします。
-
左上隅の ストア表示 リストを使用して、別の web サイトに切り替えます。
開発システムで設定した共有設定オプションが、次のように表示されます。
note info INFO 「ストア名」フィールドは web サイトスコープで編集できますが、デフォルトの設定スコープに切り替えると編集できなくなります。 これは、開発システムでのオプションの設定方法の結果です。 VAT 番号 の値は、Web サイトの範囲では編集できません。 -
まだ行っていない場合は、デフォルト設定スコープに切り替えます。
-
左側のナビゲーションの一般で、連絡先 をクリックします。
次の図に示すように、「メールの送信先」フィールドは編集できません。 この設定は慎重に行う必要があります。
-
左側のウィンドウで、顧客/顧客設定 をクリックします。
-
右側のウィンドウで、「新しいアカウントのオプションの作成 を展開し す。
「デフォルトメールドメイン」フィールドの値が次のように表示されます。 これは、システム固有の設定です。