use*_*621 10 https docker keycloak
我在我的Digital Ocean Docker Droplet上初始化了https://hub.docker.com/r/jboss/keycloak/.
$docker run -e KEYCLOAK_USER=admin -e -p 8080:8080 KEYCLOAK_PASSWORD={password with upcase etc.} jboss/keycloak
成功
一切运行良好,服务器在端口上的Droplets IP地址中启动:8080.
当我从URL中的UI进入管理控制台时,问题就开始了.有一条消息:"需要HTTPS".这是一个真正的问题,我找到的唯一解决方案是从控制台登录Keycloak并在没有UI的情况下从管理控制台更改HTTPS = required的设置.
然后我打开了我的Docker容器的bash:
$docker exec -it keycloak bash
成功
当我输入我的命令登录keycloak/bin文件夹时:
cd keycloak/bin
keycloak/bin $./kcadm.sh config credentials --server http://<droplet IP>:8080/auth --realm master --user admin --password {password with upcase etc.}
bash冻结并在一段时间后发出超时消息
从bash登录的原因将完成:
keycloak/bin $ ./kcadm.sh update realms/master -s sslRequired=NONE.
希望能解决所需的HTTPS原始问题.
Jan*_*raj 18
发布端口8443(HTTPS)并使用它而不是8080(HTTP):
docker run \
--name keycloak \
-e KEYCLOAK_USER=myadmin \
-e KEYCLOAK_PASSWORD=mypassword \
-p 8443:8443 \
jboss/keycloak
Run Code Online (Sandbox Code Playgroud)
Keycloak在此设置中为https生成自签名证书.当然,这不是生产设置.
当使用https://hub.docker.com/r/jboss/keycloak/作为起点并将DigitalOcean作为服务提供者时,该解决方案还授予访问管理控制台的权限,但没有安全性:
启动容器:
$ docker run {containerName}
Run Code Online (Sandbox Code Playgroud)
打开容器的bash:
$ docker exec -it {containerName} bash
Run Code Online (Sandbox Code Playgroud)
搬去:
$ cd keycloak/bin
Run Code Online (Sandbox Code Playgroud)
使用以下命令创建新的管理员用户:
$ ./add-user-keycloak.sh --server http://{IP}:8080/admin
--realm master --user admin --password newpassword
Run Code Online (Sandbox Code Playgroud)
(不是很多地方建议的add-user.sh)
重新启动DigitalOcean等中的Droplet,以激活在关闭之前创建的管理员用户。重新启动Droplet后,使用以下命令登录:
$ ./kcadm.sh config credentials --server http://localhost:8080/auth
--realm master --user admin
Run Code Online (Sandbox Code Playgroud)
在领域上更改SSL设置:
$ ./kcadm.sh update realms/master -s sslRequired=NONE
Run Code Online (Sandbox Code Playgroud)
该解决方案不创建任何安全性,但允许您访问管理控制台。
在此之后,建议在此开始工作:https : //www.keycloak.org/docs/latest/server_installation/index.html#setting-up-https-ssl
以下命令序列对我有用
在主机 VM 上:
docker run --name key -d -p 8080:8080 -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=admin jboss/keycloak
docker exec -it key bash
Run Code Online (Sandbox Code Playgroud)
容器内部:
cd keycloak/bin/
./kcadm.sh config credentials --server http://localhost:8080/auth --realm master --user admin
Logging into http://localhost:8080/auth as user admin of realm master
Enter password: admin
./kcadm.sh update realms/master -s sslRequired=NONE
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8427 次 |
| 最近记录: |