カテゴリ: Quarkus 更新日: 2026/03/03

QuarkusでConfigMapとSecretを使いこなす完全ガイド!初心者向けクラウド連携入門

QuarkusでConfigMap/Secretを扱う方法
QuarkusでConfigMap/Secretを扱う方法

先生と生徒の会話形式で理解しよう

生徒

「Quarkusで設定ファイルを安全に管理する方法ってありますか?クラウド環境だと不安で…」

先生

「Quarkusでは、KubernetesのConfigMapやSecretと連携して、設定情報や機密情報を安全に扱えます。」

生徒

「ConfigMapとSecretって、どう違うんですか?」

先生

「役割の違いや、Quarkusでの使い方を順番に見ていきましょう。」

1. QuarkusとConfigMap・Secretの基本

1. QuarkusとConfigMap・Secretの基本
1. QuarkusとConfigMap・Secretの基本

Quarkusは、クラウドネイティブJavaフレームワークとして、Kubernetesとの親和性が非常に高いのが特徴です。 ConfigMapとSecretは、Kubernetesで設定情報を管理するための仕組みで、Quarkusではこれらをアプリケーション設定として自然に利用できます。 ConfigMapは主にURLやフラグなどの一般的な設定値を管理し、SecretはパスワードやAPIキーなどの機密情報を扱います。 これらを使うことで、設定をコードから分離でき、環境ごとの切り替えやセキュリティ対策がしやすくなります。

2. ConfigMapとは何かを初心者向けに解説

2. ConfigMapとは何かを初心者向けに解説
2. ConfigMapとは何かを初心者向けに解説

ConfigMapは、アプリケーションが参照する設定値をKubernetes上で管理するための仕組みです。 例えば、データベースの接続先URLやアプリケーション名など、外部に公開されても問題のない情報を保存します。 Quarkusでは、ConfigMapの値を通常の設定ファイルと同じ感覚で読み込めるため、学習コストが低いのも魅力です。 クラウド環境やコンテナ運用では、イメージを作り直さずに設定変更できる点が大きなメリットです。

3. Secretとは何かとセキュリティの考え方

3. Secretとは何かとセキュリティの考え方
3. Secretとは何かとセキュリティの考え方

Secretは、ConfigMapと似ていますが、パスワードやトークンなどの重要情報を安全に扱うための仕組みです。 KubernetesではBase64形式で管理され、アクセス権限も制御できます。 QuarkusでSecretを利用することで、ソースコードに機密情報を書かずに済み、セキュリティ事故のリスクを下げられます。 初心者のうちからSecretを使う習慣を身につけることで、実務でも役立つクラウド設計の考え方が理解できます。

4. ConfigMapをQuarkusで使う設定方法

4. ConfigMapをQuarkusで使う設定方法
4. ConfigMapをQuarkusで使う設定方法

Quarkusでは、Kubernetes上のConfigMapをapplication.propertiesと同じキー名で参照できます。 特別なライブラリを意識せず、通常の設定として扱えるのが特徴です。 以下は、ConfigMapで定義した値をQuarkusのJavaクラスから読み取るシンプルな例です。


import org.eclipse.microprofile.config.inject.ConfigProperty;
import jakarta.enterprise.context.ApplicationScoped;

@ApplicationScoped
public class AppConfig {

    @ConfigProperty(name = "app.message")
    String message;

    public String getMessage() {
        return message;
    }
}

5. SecretをQuarkusで安全に扱う方法

5. SecretをQuarkusで安全に扱う方法
5. SecretをQuarkusで安全に扱う方法

SecretもConfigMapと同様に、設定キーとしてQuarkusから参照できます。 違いは、値の管理方法と扱う情報の重要度です。 以下は、データベースのパスワードをSecretから取得する例です。


import org.eclipse.microprofile.config.inject.ConfigProperty;
import jakarta.enterprise.context.ApplicationScoped;

@ApplicationScoped
public class DatabaseConfig {

    @ConfigProperty(name = "db.password")
    String password;

    public String getPassword() {
        return password;
    }
}

6. application.propertiesとの関係を理解する

6. application.propertiesとの関係を理解する
6. application.propertiesとの関係を理解する

Quarkusでは、application.propertiesは基本設定の入口として使われます。 Kubernetes環境では、ConfigMapやSecretの値がこの設定を上書きする形で反映されます。 これにより、ローカル開発と本番環境で同じコードを使いながら、設定だけを切り替えることが可能です。 初心者はまず、設定は外部から注入されるという考え方に慣れることが重要です。


apiVersion: v1
kind: ConfigMap
metadata:
  name: quarkus-config
data:
  app.message: Hello Quarkus

7. 開発環境と本番環境での使い分け

7. 開発環境と本番環境での使い分け
7. 開発環境と本番環境での使い分け

ローカル環境ではapplication.propertiesに直接値を書き、本番ではConfigMapやSecretを使う運用が一般的です。 Quarkusは起動が速く、設定変更の影響も確認しやすいため、学習にも向いています。 環境ごとの差分を設定に集約することで、コードの可読性と保守性が向上します。 この考え方は、クラウドネイティブ開発全体に共通する重要なポイントです。

8. よくある初心者のつまずきポイント

8. よくある初心者のつまずきポイント
8. よくある初心者のつまずきポイント

初心者がよく混乱するのは、ConfigMapとSecretの役割の違いです。 どちらも設定値を持ちますが、情報の重要度で使い分ける意識が必要です。 また、キー名の不一致や環境変数との関係で値が取得できないケースもあります。 一つずつ確認しながら設定することで、QuarkusとKubernetesの理解が深まります。


設定値が正しく読み込まれました
カテゴリの一覧へ
新着記事
New1
Micronaut
Micronautのイベント発行とリスナーの使い方!アプリ内通信の基本をやさしく解説
New2
Quarkus
QuarkusのREST APIでJSONレスポンスを返す方法を完全解説!初心者向けJackson・JSON-B入門
New3
Quarkus
Quarkus拡張開発入門!GraalVMネイティブイメージ統合の仕組みを徹底解説
New4
Micronaut
Micronautの@Requiresとは?条件付きBeanの読み込み方法をやさしく解説【DIとアノテーション入門】
人気記事
No.1
Java&Spring記事人気No1
Quarkus
Quarkus拡張開発を徹底解説!仕組みから自作エクステンションの作り方まで
No.2
Java&Spring記事人気No2
Java
Javaのコンパイルと実行の流れを解説!JVM・JDK・JREの違いも初心者向けに整理
No.3
Java&Spring記事人気No3
Java
JavaのString検索方法を完全ガイド!contains・indexOf・startsWith・endsWithを徹底解説
No.4
Java&Spring記事人気No4
Quarkus
Quarkus入門!GitHub ActionsでCI/CDパイプラインを構築して自動ビルドを実現する方法
No.5
Java&Spring記事人気No5
Java
JavaのString比較を徹底解説!equalsと==の違い、初心者が陥る罠とは?
No.6
Java&Spring記事人気No6
Java
Java Functionインタフェースの使い方を完全ガイド!map変換と処理チェーンを理解する
No.7
Java&Spring記事人気No7
Quarkus
Quarkus拡張開発入門!自作Extensionを作る基本ステップと仕組みを徹底解説
No.8
Java&Spring記事人気No8
Quarkus
Quarkus拡張開発をマスター!ビルドプロセスの仕組みと内部構造を徹底解説