Independent testing Updated April 2026 387 self-hosting guides 5 VPS providers tested

guide

VPSでKeycloakをセルフホストする方法(完全ガイド)

この詳細なガイドを通じて、インストール方法、コンテナ化、ベストプラクティスを含め、VPS上でKeycloakをセルフホストする方法を学びましょう。

はじめに

Keycloakは、ユーザー認証と認可を管理できるオープンソースのアイデンティティおよびアクセス管理ソリューションです。VPS(バーチャルプライベートサーバー)上にKeycloakをセルフホストすることで、認証プロセスを完全にコントロールでき、開発者やホームラボ愛好家の間で人気があります。このガイドでは、特にDockerを使用してデプロイを簡素化しながら、VPS上にKeycloakをインストールする手順を説明します。

適切なVPSプロバイダーの選び方

Keycloakのセルフホスティング用にVPSを選ぶ際は、パフォーマンス、料金、利用可能なリソースを考慮してください。以下は、Keycloak展開に検討できる主要なVPSプロバイダーの比較表です。

プロバイダー月額料金RAMCPUコアストレージ
Contabo VPS5.99 EUR4 GB2300 GB SSD
Hetzner Cloud4.15 EUR2 GB120 GB SSD
DigitalOcean6 USD1 GB125 GB SSD
Vultr6 USD1 GB125 GB SSD
Linode (Akamai)5 USD2 GB150 GB SSD

より詳細な情報にはVPS全比較表をご覧ください。

前提条件

開始する前に、次の準備をしてください。

  1. 十分なリソース(少なくとも2 GB RAM推奨)を持つVPS
  2. VPSのIPアドレスに紐付けられたドメイン名(任意だが推奨)
  3. LinuxコマンドラインとSSHの基本的な知識

VPSにKeycloakをインストールする

ステップ 1: VPSにアクセス

SSHを使ってVPSに接続します。your-useryour-ipはあなたのユーザー名とVPSのIPアドレスに置き換えてください。

ssh your-user@your-ip

ステップ 2: Dockerをインストール

Dockerを使用してKeycloakをセットアップすることで、簡素化と管理が容易になります。UbuntuサーバーにDockerをインストールする方法は以下の通りです。

sudo apt update
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install -y docker-ce

インストールの確認は次のコマンドで行います。

docker --version

ステップ 3: Dockerを使ってKeycloakを起動

以下のコマンドを実行して、KeycloakのDockerコンテナを起動します。

sudo docker pull jboss/keycloak
sudo docker run -d -p 8080:8080 --name keycloak \
-e KEYCLOAK_USER=admin \
-e KEYCLOAK_PASSWORD=password \
jboss/keycloak

このコマンドでは、KEYCLOAK_USERKEYCLOAK_PASSWORDに管理者ユーザーとパスワードを設定しています。セキュリティのためにこれらを適切に変更してください。

ステップ 4: Keycloakにアクセス

コンテナが起動したら、ブラウザでhttp://your-vps-ip:8080/authにアクセスしてください。設定した資格情報を使ってログインできます。

ステップ 5: Keycloakの設定

最初のログイン後に、リアルム、クライアント、ユーザーの設定を開始できます。Keycloakはこれらの設定に関する詳しいドキュメントも提供しています。

セルフホスティングKeycloakのベストプラクティス

  1. VPSのセキュリティ確保:定期的なシステムアップデートと、ファイアウォールを使ったアクセス制限を行います。
  2. HTTPSを有効化:Let’s Encryptを利用して無料のSSL証明書を作成し、KeycloakをHTTPS上で動作させます。
  3. データのバックアップ:定期的にKeycloakのデータベースとコンテナ設定をバックアップしてください。

よくある質問

1. Dockerを使わなくてもKeycloakは動かせますか?

はい、Dockerを使わずにKeycloakをインストールすることも可能です。 Keycloak公式サイトからスタンドアロン版をダウンロードし、お使いのOS向けのインストール手順に従うことができます。ただし、Dockerを使う方が導入や管理が容易であり、依存関係のトラブルも少なくなります。

2. VPSでKeycloakをスケールさせるには?

VPSでKeycloakをスケールさせるには、複数のインスタンスをロードバランサーの背後に展開します。Docker ComposeやKubernetesを使って複数コンテナを管理すると良いでしょう。各インスタンスは同じデータベースを共有し、セッションの一貫性を保つ必要があります。VPSのリソースも十分に確保してください。

3. Keycloakはどのデータベースを使えますか?

Keycloakは、PostgreSQL、MySQL、MariaDB、H2(開発用)などさまざまなデータベースをサポートしています。本番環境では、堅牢性と拡張性からPostgreSQLまたはMySQLの使用がおすすめです。設定はstandalone.xmlまたはDockerの環境変数を通じて行います。

これらの手順に従えば、VPS上でKeycloakをセルフホストし、アイデンティティ管理とアクセス管理を自分でコントロールすることが可能です。セルフホスティングに関するさらなる情報やリソースについては、r/selfhostedコミュニティやawesome-selfhostedリポジトリもご参照ください。 ---END---