1. 首先对keycloak 命令有所了解
需要将 Keycloak 中的 Realm 导出或导入时,您可以使用 JSON 文件进行操作。以下是一些有关导出和导入 Realm 的方法:
-
导出 Realm 到目录:
- 使用
export
命令将 Realm 导出到目录。在执行此命令时,确保您的 Keycloak 服务器实例未启动。 - 命令示例:
bin/kc.[sh|bat] export --dir <dir>
- 服务器将为每个导出的 Realm 创建单独的文件。
- 使用
-
在启动过程中导入 Realm:
- 使用
--import-realm
选项,在服务器启动时导入 Realm 配置文件。 - 命令示例:
bin/kc.[sh|bat] start --import-realm
- 服务器将尝试从
data/import
目录中导入任何 Realm 配置文件。
- 使用
2. 导出一个领域 和 用户
- 登陆keycloak docker, 使用root 登陆不用stop keycloak service
docker exec -u root -it keycloak /bin/bash
- 进入keycloak folder
cd opt/keycloak
- 运行命令导出 Realm and 用户数据。
./bin/kc.sh export --realm mytest --dir ./data --users realm_file
./bin/kc.sh
:这是 Keycloak 的启动脚本。您需要在 Keycloak 安装目录中运行此脚本。export
:这是一个 Keycloak 命令,用于执行导出操作。--realm mytest
:指定要导出的 Realm 名称为mytest
。--dir ./data
:指定导出文件的目录为./data
。--users
:这个选项表示只导出用户信息,而不包括其他配置信息。realm_file
:用户将导出到与领域设置相同的文件。对于名为“mytest”的领域,这将是包含领域数据和用户的“mytest-realm.json”。
3. 导入一个领域 和 用户
- 登陆keycloak UI , 然后创建一个Realm
- 将你的mytest-realm.json 拖进到上传box 中,然后点击创建就可以了