#複数の環境管理
dev、test、staging、prod などの複数の NocoBase アプリケーションを維持する場合、それらをそれぞれ CLI 環境として保存できます。将来の nb コマンドのほとんどはデフォルトで現在の環境で動作するため、nb app、nb api、nb db などのコマンドを実行する前に、使用している環境を確認することが重要です。
このバージョンから、CLI は概念を current env と last env に分割します。通常は、現在のシェルまたはエージェント ランタイムが使用している環境である current env のみを気にする必要があります。 CLI は、セッション モードが有効になっていない場合にのみ、グローバル last env にフォールバックします。
クイックインデックス
デフォルトでは、最初に nb session setup を実行することをお勧めします。このようにして、異なる端末、異なるシェル、または異なるエージェント ランタイムはそれぞれ独自の current env を維持でき、並列操作中に簡単に相互に影響を与えることはありません。
セッション モードが有効になっていない場合、nb env use はグローバル last env の更新に戻ります。この場合、一方の端末が環境を遮断すると、もう一方の端末にも影響が出る可能性があります。
複数の環境を作成する
ローカル アプリケーションを作成または復元する場合は、nb init を使用してください。初期化が完了し、結果が新しい CLI 環境に保存されます。
アプリケーションがすでに存在し、それを CLI に接続したいだけの場合は、通常、nb env add を使用する方が簡単です。
前者は「環境の初期化」に関するものであり、後者は「既存の環境の登録」に関するものです。既存のアプリケーションに接続するだけの場合は、デフォルトで nb env add を使用してください。
構成された環境を表示す る
まず、nb env list を使用して、どの環境がローカルに保存されているかを確認します。
このコマンドは構成自体を表示するだけであり、アプリケーションのステータスを積極的に確認することはありません。接続と認証ステータスの両方を確認したい場合は、nb env status --all を使用します。
通常、ok、auth failed、unreachable などのステータス値が表示されます。
現在の環境を切り替える
nb env use を使用して環境を切り替えます。
切り替えが完了すると、--env を省略した後続のコマンドは、デフォルトでこの環境を使用します。
現在の環境を確認する
現在のコマンドがどの環境に該当するかわからない場合は、最初に次の 2 つのコマンドを実行します。
nb env current は名前を確認するために使用され、nb env status は現在の環境にアクセス可能かどうか、および認証が正常であるかどうかを確認するために使用されます。
単一の環境の詳細を表示する
特定の環境にどのような構成が保存されているかを確認したい場合は、nb env info を使用します。
このうち、--field はスクリプト内で値を 1 つだけ取るのに適しています。 --show-secrets は、トークンやパスワードなどの機密情報をプレーン テキストで表示します。明らかにトラブルシューティングが必要な場合にのみ使用してください。
環境設定を更新する
nb env update は、保存された環境の構成を調整するために使用されます。 API アドレス、認証方法、ソース コード ソース、アプリケーション ポート、データベース パラメーターなど。更新が完了すると、CLI は変更に基づいてフォローアップ手順を自動的に処理します。
現在の環境の最新の状態に従って CLI を再同期したいだけの場合は、次のように記述します。
この環境によって保存された接続情報またはローカル構成を変更する場合は、明示的にパラメーターを指定できます。
ここでまずデフォルトの判断を思い出してください。
- env によって保存された接続情報またはローカル構成を変更するには、
nb env updateを使用します。 - アプリケーション インターフェイス、プラグイン、または CLI で使用できる機能が変更されたばかりです。
nb env updateを再度実行することもできます - ログイン ステータスの有効期限が切れているか、認証プロセスを再度実行する必要がある場合は、
nb env authを使用してください。 - 現在保存されている内容を確認するには、
nb env infoを使用してください
app-port、timezone、db-* などのローカル実行構成を変更した場合、update は保存された値を変更するだけで、アプリケーションは自動的に再起動しません。一般に、nb app restart --env <name> は後で実行されます。変更に CLI 管理の組み込みデータベースが関係する場合は、nb app restart --env <name> --with-db を使用します。
再認証
env は保存されているが、ログイン状態の有効期限が切れている場合、または認証方法を切り替えたい場合は、次のようにして再認証できます。
環境名を省略した場合、CLI は現在の環境を使用します。認証が完了すると、CLI はその後の同期を自動的に処理します。
環境を削除する
これらのシナリオは最も混乱を招きます。まず、デフォルトの提案を覚えておいてください。
- アプリケーションを停止したいだけの場合は、
nb app stopを使用してください。 - 現在のマシンの組み込みデータベース ランタイムも停止したいので、
nb app stop --with-dbを使用してください。 - この環境はもう必要ないが、ストレージとローカル アプリ ファイルを最初に保持したい場合は、
nb env removeを使用してください。 - ローカル ホスティング リソースもクリーンアップ し、
nb env remove --purgeを使用します
保存された環境設定のみを削除したい場合は、次のようにします。
ローカルまたは Docker でホストされている環境で、ローカル マシン上で実行中のリソースとストレージ データもクリーンアップしたい場合は、--purge を追加できます。
非対話モードでは、nb env remove を --force に明示的に渡す必要があります。
--purge は、現在のマシン上の CLI 管理のリソースのみをクリーンアップします。リモート API 環境の場合、リモート サービス自体は削除されません。
アプリケーションと CLI で管理される組み込みデータベースを停止したいだけの場合は、次のように記述します。
この環境を削除してもストレージとローカル アプリ ファイルは保持したい場合は、次のようにします。
この環境のネイティブにホストされているコンテンツを本当にクリーンアップしたい場合は、--purge を追加します。
CLI ダウンロードによって管理されるローカル npm/Git env の場合、--purge は CLI でホストされるローカル アプリ ファイルも削除します。 HTTP または SSH 環境の場合、CLI に保存された環境設定のみが削除され、外部サービス自体は削除されませ ん。

