すべてのプロダクト
Search
ドキュメントセンター

Serverless App Engine:ConfigMap (K8s ConfigMap) の管理と使用

最終更新日:Nov 09, 2025

ConfigMap (Kubernetes ConfigMap) は、アプリケーションランタイムの環境変数として使用したり、アプリケーションコンテナーのファイルシステムに設定ファイルとしてマウントしたりできます。ConfigMap を使用すると、イメージを再構築することなく、アプリケーションのデプロイメント後に構成を変更できます。

このトピックは、設定センターから構成情報を動的に取得する必要があるシナリオには適用されません。詳細については、「MSE で Nacos を使用する」または「分散構成の管理 (ACM)」をご参照ください。

キーや証明書などの機密情報を保存するには、「K8s Secret の管理と使用」をご参照ください。

ConfigMap の作成

  1. SAE ConfigMap ページで、ページ上部でターゲットリージョンと名前空間を選択し、[作成] をクリックします。ターゲットアプリケーションが配置されている名前空間を選択していることを確認してください。

    1. カスタムの [設定項目名] を指定します。

    2. 設定マッピング: 編集モードを選択し、変数名と値のマッピングを構成します。

      • フォームで編集: [変数を追加] をクリックし、変数名とその値を入力します。複数の変数を追加できます。長い構成内容の場合は、変数値の横にある image アイコンをクリックして、内容を貼り付けて編集できます。

      • JSON 形式で編集: コードボックスに、1 つ以上の変数名とその値のマッピングを入力します。変数名と値は "" で囲む必要があります。例:

        {
            "nv_shell": "/bin/sh",
            "nginx_conf": "daemon            off;\nworker_processes  2;\nuser              www-data;\n\nevents {\n    use           epoll;\n    worker_connections  128;\n}\n\nerror_log         logs/error.log info;\n\nhttp {\n    server_tokens off;\n    include       mime.types;\n    charset       utf-8;\n\n    access_log    logs/access.log  combined;\n\n    server {\n        server_name   localhost;\n        listen        127.0.0.1:80;\n\n        error_page    500 502 503 504  /50x.html;\n\n        location      / {\n            root      html;\n        }\n\n    }"
        }
        
      • YAML 形式を使用: コードボックスに、1 つ以上の変数名とその値のマッピングを入力します。以下は設定例です。

        nv_shell: /bin/sh
        nginx_conf: |-
          daemon            off;
          worker_processes  2;
          user              www-data;
        
          events {
              use           epoll;
              worker_connections  128;
          }
        
          error_log         logs/error.log info;
        
          http {
              server_tokens off;
              include       mime.types;
              charset       utf-8;
        
              access_log    logs/access.log  combined;
        
              server {
                  server_name   localhost;
                  listen        127.0.0.1:80;
        
                  error_page    500 502 503 504  /50x.html;
        
                  location      / {
                      root      html;
                  }
        
              }
  2. [ConfigMap] リストで、作成した ConfigMap を表示し、[編集][コピー][履歴の表示][削除] などの操作を実行できます。

    重要

ConfigMap をアプリケーションの環境変数として使用する

  1. アプリケーションの作成

    SAE アプリケーションリスト ページで、上部でターゲットリージョンと名前空間を選択し、[アプリケーションの作成] をクリックします。[アプリケーションの基本情報] ページで、パラメーターを構成し、[次へ: 詳細設定] をクリックします。

    実行中のアプリケーションの変更

    警告

    アプリケーションを再デプロイすると、アプリケーションは再起動されます。ビジネスの中断などの予期しないエラーを防ぐために、オフピーク時間にアプリケーションをデプロイすることをお勧めします。

    SAE アプリケーションリスト ページで、上部でターゲットリージョンと名前空間を選択し、ターゲットの [アプリケーション ID] をクリックします。左側のナビゲーションウィンドウで、[基本情報] をクリックします。右上隅で、[アプリケーションのデプロイ] をクリックします。

    停止中のアプリケーションの変更

    SAE アプリケーションリスト ページで、上部でターゲットリージョンと名前空間を選択し、ターゲットの [アプリケーション ID] をクリックします。左側のナビゲーションウィンドウで、[基本情報] をクリックし、次に [アプリケーション構成の変更] をクリックします。

  1. [環境変数] セクションで、[タイプ][設定項目の参照] に設定し、現在のアプリケーションのカスタム [変数名] を指定します。すべてのキーを参照する場合、キー名が変数名として使用されるため、変数名を指定する必要はありません。次に、既存の [設定項目名][キー] を選択します。キーは設定項目内の変数です。すべてのキーの参照もサポートされています。複数の設定項目を追加できます。

  2. アプリケーションがデプロイされるのを待ちます。構成が有効であることを確認するには、アプリケーションインスタンスの Webshel​​l にログインし、env | grep <variable name> コマンドを実行します。<variable name> を、構成した変数名に置き換えます。コマンドが変数名とその値のマッピングを返した場合、構成は有効です。

ConfigMap をアプリケーションのファイルシステムに設定ファイルとしてマウントする

ConfigMap をアプリケーションコンテナーのファイルシステムにマウントできます。ConfigMap の値はファイルの内容として使用されます。ファイルパスと名前はカスタマイズできます。パス内に同じ名前のファイルが存在する場合、マウントされたファイルは元のファイルを上書きします。

マウントされたファイルは、多くの場合、アプリケーションの設定ファイルとして使用されます。これにより、イメージを再構築することなく構成を変更できます。アプリケーションコンテナー内の既存の設定ファイルを変更するには、まず元のファイルの内容をローカルマシンにコピーします。内容を変更した後、それを ConfigMap の値として保存します。次に、このトピックの指示に従って、ConfigMap をアプリケーションのファイルシステムにマウントします。

  1. アプリケーションの作成

    SAE アプリケーションリスト ページで、上部でターゲットリージョンと名前空間を選択し、[アプリケーションの作成] をクリックします。[アプリケーションの基本情報] ページで、パラメーターを構成し、[次へ: 詳細設定] をクリックします。

    実行中のアプリケーションの変更

    警告

    アプリケーションを再デプロイすると、アプリケーションは再起動されます。ビジネスの中断などの予期しないエラーを防ぐために、オフピーク時間にアプリケーションをデプロイすることをお勧めします。

    SAE アプリケーションリスト ページで、上部でターゲットリージョンと名前空間を選択し、ターゲットの [アプリケーション ID] をクリックします。左側のナビゲーションウィンドウで、[基本情報] をクリックします。右上隅で、[アプリケーションのデプロイ] をクリックします。

    停止中のアプリケーションの変更

    SAE アプリケーションリスト ページで、上部でターゲットリージョンと名前空間を選択し、ターゲットの [アプリケーション ID] をクリックします。左側のナビゲーションウィンドウで、[基本情報] をクリックし、次に [アプリケーション構成の変更] をクリックします。

  1. [構成管理] エリアで、[+ 追加] をクリックします。既存の設定項目の [設定項目名][キー] を選択します。キーは設定項目内の変数名です。単一のキーまたはすべてのキーをマウントできます。次に、カスタムの [マウントパス] を指定します。単一のキーをマウントするには、ファイル名を含む絶対パスを入力します。すべてのキーをマウントするには、ファイル名を含まない絶対パスを入力します。SAE は、各設定項目のキー名をファイル名として自動的に使用します。複数の設定項目を追加できます。

  2. アプリケーションがデプロイされるのを待ちます。構成が有効であることを確認するには、アプリケーションインスタンスの Webshel​​l にログインし、マウントパス内のファイルの内容を表示します。

シナリオ例

PHP アプリケーションの php-fpm.conf の構成

  1. ConfigMap を作成します。

    1. [ConfigMap 名]php-fpm に設定します。

    2. [設定マッピング][YAML で編集] を選択し、コードボックスに次の YAML 構成を入力します。

      www_conf: |
        [www]
        user = www-data
        group = www-data
        listen = 127.0.0.1:9000
        pm = dynamic
        pm.max_children = 5
        pm.start_servers = 2
        pm.min_spare_servers = 1
        pm.max_spare_servers = 3
  1. 作成した PHP アプリケーションのファイルシステムに、ConfigMap を設定ファイルとしてマウントします。

    1. [設定項目名]php-fpm に設定します。

    2. [キー]www_conf に設定します。

    3. マウントパスを /usr/local/etc/php-fpm.d/www.conf に設定します。

Nginx の nginx.conf の構成

詳細については、「SAE を使用して Nginx サービスをデプロイする」をご参照ください。