CHAPTER 01 / KOHAKU
導入・起動
ソースをビルドして配布ディレクトリを作り、最小のページで起動を確認します。
必要な環境
JDK 21(JREだけではJSPのコンパイルができません)、Maven 3.9以上、起動スクリプトを実行できるBashを用意します。リポジトリのビルドラッパーは /opt/java/jdk21 を固定参照します。実行用JDKは KOHAKU_JAVA_HOME で指定できます。
リポジトリのルートで確認
/opt/java/jdk21/bin/java -version
/opt/java/jdk21/bin/javac -version
mvn -version配布物をビルドする
リポジトリのルートで実行します。全モジュールのテストと品質ゲートも実行します。
ビルドbin/mvn21 -q clean verify配布ディレクトリは
dist/kohaku-dist/target/kohaku/です。これはソースのbin/mvn21と別のbin/kohaku.shを持ちます。ローカルで試す設定にする
生成された配布ディレクトリへ移動し、
conf/server.yamlを編集します。作業ディレクトリの変更cd dist/kohaku-dist/target/kohakuconf/server.yaml — ローカル確認用http: host: "127.0.0.1" port: 8080 management: host: "127.0.0.1" port: 9090管理ポートはこの例で明示的に有効化しています。既定では開きません。
確認用ページを置く
配布ディレクトリで実行mkdir -p webapps/hello printf '%s\n' '<!doctype html><html lang="ja"><meta charset="UTF-8"><title>Hello</title><h1>Kohaku is running</h1></html>' > webapps/hello/index.htmlフォアグラウンドで起動する
配布ディレクトリで実行bin/kohaku.sh runJDKが別の場所にある場合は次の形にします。
/path/to/jdk21は実在するJDKへ置き換えてください。実行用JDKを指定KOHAKU_JAVA_HOME=/path/to/jdk21 bin/kohaku.sh run別のターミナルから確認する
HTTPとreadinessの確認curl -i http://127.0.0.1:8080/hello/index.html curl -i http://127.0.0.1:9090/health/readyページは200と作成した本文、readinessは200と
UPを返します。アプリ未配備のルート/に404が返る構成は正常です。停止は起動ターミナルでCtrl-Cを押します。
配布ディレクトリ
| ディレクトリ | 用途 |
|---|---|
| bin/ | run / start / stop の起動スクリプト |
| conf/ | server、logging、users、cert-users、resourcesのYAMLと、XMLの例・XSD |
| lib/ | JPMSモジュールパス。サーバ本体と仕様API。サーバ共有DBのドライバを置く場合もこの層 |
| shared/ | コンテナ提供JSTLとWebSocket発見shim。任意jar用の公開拡張点ではありません |
| lib-agent/ | 常駐エージェント。スクリプトが読める場合に -javaagent で装着 |
| webapps/ | WARまたは展開済みアプリ |
| logs/ | 起動出力、PID、起動・終了マーカー、設定したログ |
| temp/ | WARの世代別展開。JSPコンパイルは各webappのWEB-INF/tmp/ |
バックグラウンド実行
配布ディレクトリで実行
bin/kohaku.sh start
curl -i http://127.0.0.1:9090/health/ready
bin/kohaku.sh stop