カテゴリ: Micronaut 更新日: 2026/02/27

Micronautの設定値を環境ごとに管理する方法!dev・test・prodの切り替えをやさしく解説

Micronautの設定値を環境ごとに管理する方法!dev・test・prodの切り替え
Micronautの設定値を環境ごとに管理する方法!dev・test・prodの切り替え

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

生徒

「Micronautでアプリを作り始めたんですが、開発用と本番用で設定を変えたいときはどうすればいいんですか?」

先生

「Micronautには、環境ごとに設定値を切り替える仕組みが用意されています。」

生徒

「devとかprodって聞いたことはありますが、具体的な使い方が分からなくて…」

先生

「設定ファイルの分け方と実行時の切り替え方法を順番に見ていきましょう。」

1. Micronautで環境ごとに設定を分ける理由

1. Micronautで環境ごとに設定を分ける理由
1. Micronautで環境ごとに設定を分ける理由

Micronautの設定管理では、環境ごとに設定値を分けて管理する考え方がとても重要です。開発環境ではデバッグしやすい設定、本番環境では安全性や性能を重視した設定が求められます。すべてを一つの設定ファイルに書いてしまうと、変更ミスによるトラブルが起きやすくなります。Micronautでは環境という仕組みを使うことで、設定の切り替えを安全かつ簡単に行えます。

2. dev・test・prodという環境の考え方

2. dev・test・prodという環境の考え方
2. dev・test・prodという環境の考え方

一般的にMicronautでは、開発用のdev、テスト用のtest、本番用のprodという三つの環境を使い分けます。devはローカル開発向け、testは自動テストや検証向け、prodは実際の利用者がアクセスする環境です。それぞれ役割が異なるため、同じ設定値を使うのは適切ではありません。環境を分けることで、意図しない設定の混在を防げます。

3. application.ymlと環境別設定ファイル

3. application.ymlと環境別設定ファイル
3. application.ymlと環境別設定ファイル

Micronautでは、共通設定をapplication.ymlに書き、環境ごとの設定をapplication-dev.ymlやapplication-prod.ymlのように分けて管理します。起動時に指定された環境名に応じて、対応する設定ファイルが自動的に読み込まれます。これにより、共通部分と差分を明確に分離できます。


micronaut:
  application:
    name: sample-app

micronaut:
  server:
    port: 8080

4. 実行時に環境を切り替える方法

4. 実行時に環境を切り替える方法
4. 実行時に環境を切り替える方法

Micronautでは、起動時に環境名を指定することで設定を切り替えます。環境名は複数指定することもでき、優先順位に従って設定が上書きされます。開発中はdev、本番デプロイ時はprodを指定するのが一般的です。この仕組みにより、同じアプリケーションでも実行環境に応じた動作が可能になります。


-Dmicronaut.environments=dev

5. Javaクラスで設定値を利用する基本

5. Javaクラスで設定値を利用する基本
5. Javaクラスで設定値を利用する基本

環境ごとに切り替えた設定値は、Javaクラスからそのまま利用できます。Micronautでは設定管理と依存性注入が密接に連携しているため、特別な処理を書く必要はありません。設定ファイルを変更するだけで、クラスの動作を柔軟に変えられる点が大きなメリットです。


import io.micronaut.context.annotation.Value;
import jakarta.inject.Singleton;

@Singleton
public class ServerConfig {

    @Value("${micronaut.server.port}")
    int port;

    public int getPort() {
        return port;
    }
}

6. test環境で設定を切り替える実践例

6. test環境で設定を切り替える実践例
6. test環境で設定を切り替える実践例

テスト環境では、本番とは異なるデータベースやポート番号を使いたい場面が多くあります。Micronautではtest用の設定ファイルを用意するだけで対応できます。これにより、テスト実行時に本番設定を誤って使ってしまうリスクを防げます。初心者のうちは、ポート番号を変える例から試すと理解しやすいです。


micronaut:
  server:
    port: 9090

7. 環境変数と組み合わせた設定管理

7. 環境変数と組み合わせた設定管理
7. 環境変数と組み合わせた設定管理

Micronautの環境別設定は、環境変数とも組み合わせて使えます。これにより、パスワードやAPIキーなどの重要な情報をファイルに直接書かずに管理できます。環境ごとの設定ファイルと外部設定を組み合わせることで、より安全で柔軟な構成が実現できます。クラウドやコンテナ環境でもこの考え方は非常に役立ちます。


datasources:
  default:
    url: ${DB_URL}

8. 環境ごとの設定管理を身につけるメリット

8. 環境ごとの設定管理を身につけるメリット
8. 環境ごとの設定管理を身につけるメリット

Micronautで環境ごとの設定管理を理解すると、開発から本番運用まで一貫した構成でアプリを運用できます。設定の切り替えが明確になることで、トラブルの原因を特定しやすくなり、チーム開発でも安心して作業できます。初心者の段階でこの仕組みを理解しておくと、後々の開発効率が大きく向上します。

関連記事:
カテゴリの一覧へ
新着記事
New1
Micronaut
Micronautの@Factoryとは?複雑なBean生成を管理するための方法を解説
New2
Quarkus
QuarkusのDIとCDIを完全理解!@Producesでプロデューサーメソッドを使う方法を初心者向けに解説
New3
Java
JavaのStringBufferクラスを徹底解説!スレッド安全な文字列操作の仕組みと使い分け
New4
Micronaut
Micronautで非同期HTTP処理を行う方法!リアクティブ対応の基礎知識
人気記事
No.1
Java&Spring記事人気No1
Quarkus
Quarkus入門!GitHub ActionsでCI/CDパイプラインを構築して自動ビルドを実現する方法
No.2
Java&Spring記事人気No2
Java
Javaのコンパイルと実行の流れを解説!JVM・JDK・JREの違いも初心者向けに整理
No.3
Java&Spring記事人気No3
Quarkus
QuarkusのCI/CD入門!GitHub Actionsで自動デプロイを実現する方法
No.4
Java&Spring記事人気No4
Micronaut
Micronautのルーティング設定ガイド!プレフィックス付与とAPIバージョニングの基本
No.5
Java&Spring記事人気No5
Micronaut
Micronautのフィルタ徹底解説!HTTPリクエスト共通処理をスマートに追加する方法
No.6
Java&Spring記事人気No6
Java
Java Optional ifPresentの使い方を徹底解説!nullチェックをスマートに省略する方法
No.7
Java&Spring記事人気No7
Java
Java Functionインタフェースの使い方を完全ガイド!map変換と処理チェーンを理解する
No.8
Java&Spring記事人気No8
Java
JavaのString比較を徹底解説!equalsと==の違い、初心者が陥る罠とは?