この記事について
会社の開発中のソフトウェアのログインにKeycloakを使用するというので、セットアップ中に起こった問題とそれらに対するトラブルシューティングを備忘録として残す第一弾です。初心者なので初歩的なコメント多々あります。![]()
開発環境はmacOS Mojave 10.14.6とEclipseです。
日付: 2019/9/30
目次
KeycloakとEclipseのインストール
Keycloak
まずは/Users/ユーザー名(以下ユーザー配下)にkeycloakのレポジトリーを以下のコマンドでクローンします。
Eclipse
http://mergedoc.osdn.jp/
このリンクから最新版のEclipseを選択し、UltimateのFull editionをダウンロードします。
KeycloakをEclipseにインポート
Eclipseで新規のMavenプロジェクトを作成します。
シンプルなプロジェクトの作成にチェックを入れ、グループIdにKeycloak_server、アーティファクトIdにkeycloakを入力します。
作成したプロジェクトを右クリックしてインポートを選択、先ほどgitからクローンしたkeycloakをインポートします。
そうするとプロジェクトの中身が以下のようになります。
これでインポートは完了です。
ビルド
デバッグで動かす前にシェルでビルドします。
ビルドにはJDKとMavenが必要なので入れておいてください。
/Applications/Eclipse_2019-06.app/Contents/workspace/keycloak配下へ行き、以下のコマンドを入力します。(初回のみ)
$ mvn install -DskipTests=true
$ cd distribution
$ mvn install
これで準備完了
このコマンドでdistributionの中にSNAPSHOTができるので、
SNAPSHOT内のbinから.standalone.shからkeycloakを動かすことも可能。
次からは以下のコマンドでビルド
mvn -Ddistribution -DskipTests=true -Dmaven.test.skip=true -DskipTestsuite=true clean install
-DskipTests=trueが無いと気が遠くなるほどテストを繰り返すので飛ばします。
デバック構成と実行
上のメニューバーに虫の様なロゴがあるので、隣の小さい三角をクリックしてデバッグ構成を開きます。
左のリストの中からMavenビルドを右クリックして新規作成を選択し、以下の様に設定します。
次にJREタブへ行き、VM引数に
-Dkeycloak.connectionsJpa.url=jdbc:h2:./keycloak;AUTO_SERVER=TRUE -Dmaven.surefire.debug=true
を入力します。
これによりEclipseでKeycloakを再起動した際に、前回設定した内容が引き継がれるのと、
デバッグする時にログが出力されます。
ここで、実行環境がjava8になっているか確認してください。
Keycloakはjava8じゃないとうまく動きません。(理由は不明
)
【java8へのダウングレードは以下を参照】
Macで動かすjavaをjava8へダウングレードする
早速動かしてみましょう
また虫の隣の小さい三角をクリックすると、今度はkeycloak_runが出ているので選択します。
ターミナルでStarted Keycloak (http://localhost:8081/auth) in 25462 msと表示されたら起動完了です。
参考文献
備考
デバッグ構成のJREでAUTO_SERVER=TRUEにしましたが、これをすることで極端に起動が遅くなるのでせっかちな人にはおすすめしません![]()