ナレッジベース
公開されました Sep. 10, 2025

サービスを削除して再デプロイするときにシークレット環境変数を保持する方法

written-by

Isaac Wilson

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

問題

  • ビジネス上の理由から、場合によっては削除して新しい展開で再作成する必要があるカスタム サービスがあります。 ただし、サービスを削除すると、以前にこのサービスに (UI を使用して) アタッチされたすべてのシークレット変数は、サービスが再作成されたときに挿入されなくなり、各シークレットにアクセスして再アタッチする必要があります。
  • サービスの削除および再作成イベント全体でシークレットを保持する方法はありますか?

Environment

  • ライフレイ クラウド

解決策

  • LCP.json を活用する次の手順と構文を使用すると、サービスの作成時 (または、新しいシークレットをアタッチする場合は展開時) にシークレットがサービスに挿入されるようにすることができます。

    1. シークレットが環境内で既に作成されており、環境の [設定] ページの [シークレット] セクションを表示するときに表示されることを確認します (参照: 新しいシークレットの追加)
      注: このシークレットは現在アタッチする必要はありません「使用先」の下にあるすべてのサービスに

    2. サービスの LCP.json の env セクションを編集または追加して、次の変数構文を含めます:
      "DESIRED_VARIABLE_KEY" : "@nameofexistingsecret"
      :
        "env": {
      "EXAMPLE_KEY": "@examplename"
      },
    3. これらの変更を含むビルドを作成し、そのビルドを環境

      にデプロイします。これを行うと、シークレットが以前にサービスにアタッチされていなかった場合でも、examplename シークレットに保存された値が、次を使用して起動プロセス中にサービスに注入されます。 LCP.json に設定されたキー。

追加情報

did-this-article-resolve-your-issue

ナレッジベース