无法连接到 keycloak 管理面板
Cannot connect to keycloak admin panel
我已经通过 Docker 学习了 this 教程和 运行 keycloak with postgres。由于端口 8080 已被我的前端应用程序使用,因此它改用 9990。
正如日志所说:
13:26:00,602 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0060: Http management interface listening on http://127.0.0.1:9990/management
13:26:00,603 INFO [org.jboss.as] (Controller Boot Thread)
WFLYSRV0051: Admin console listening on http://127.0.0.1:9990
但是当我通过浏览器访问这些网址时,没有任何反应。我也试过 http://127.0.0.1:9990/auth/admin/ 但没用。当我尝试连接时,我的 keycloak 控制台中没有任何显示。
我在没有任何额外设置的情况下按照教程进行操作。怎么了?
首先我创建一个用户定义网络:
docker network create keycloak-network
然后我运行 postgres:
docker run -d --name postgres --net keycloak-network -e POSTGRES_DB=keycloak -e POSTGRES_USER=keycloak -e POSTGRES_PASSWORD=password postgres
最后是 Keycloak:
docker run --name keycloak --net keycloak-network jboss/keycloak
您需要发布 Keycloak 容器的端口(http 为 8080,https 为 8443)+ 重新映射端口,因为 8080 已在您的计算机上使用。例如:
docker run --rm \
--name keycloak \
--net keycloak-network \
-e KEYCLOAK_USER=myadmin \
-e KEYCLOAK_PASSWORD=mypassword \
-p 9990:8080 \
-p 9991:8443 \
jboss/keycloak
Keycloak admin UI 将在以下时间可用:
http://<ip of the host machine\>:9990/
https://<ip of the host machine\>:9991/
(在这种情况下会生成自签名证书,因此您需要在浏览器中批准 TLS 例外)
如果像我这样的人会尽快从安装 Keycloak 开始Docker。
在 Docker 上安装 Keycloak 的完整路径,然后可以通过端口 9990 访问 Web UI(您可以在最后一个命令中更改它):
docker network create keycloak-network
docker run -d --name postgres --net keycloak-network -e POSTGRES_DB=keycloak -e POSTGRES_USER=keycloak -e POSTGRES_PASSWORD=password postgres
docker run --rm --name keycloak --net keycloak-network -e KEYCLOAK_USER=myadmin -e KEYCLOAK_PASSWORD=mypassword -e DB_USER=keycloak -e DB_PASSWORD=password -p 9990:8080 -p 9991:8443 jboss/keycloak
与 topickstarter 和之前答案的不同之处在于避免了以下错误:
"WFLYCTL0113: '' is an invalid value for parameter user-name
通过在最后一条命令中提供数据库用户名和密码。
我已经通过 Docker 学习了 this 教程和 运行 keycloak with postgres。由于端口 8080 已被我的前端应用程序使用,因此它改用 9990。 正如日志所说:
13:26:00,602 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0060: Http management interface listening on http://127.0.0.1:9990/management
13:26:00,603 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0051: Admin console listening on http://127.0.0.1:9990
但是当我通过浏览器访问这些网址时,没有任何反应。我也试过 http://127.0.0.1:9990/auth/admin/ 但没用。当我尝试连接时,我的 keycloak 控制台中没有任何显示。
我在没有任何额外设置的情况下按照教程进行操作。怎么了?
首先我创建一个用户定义网络:
docker network create keycloak-network
然后我运行 postgres:
docker run -d --name postgres --net keycloak-network -e POSTGRES_DB=keycloak -e POSTGRES_USER=keycloak -e POSTGRES_PASSWORD=password postgres
最后是 Keycloak:
docker run --name keycloak --net keycloak-network jboss/keycloak
您需要发布 Keycloak 容器的端口(http 为 8080,https 为 8443)+ 重新映射端口,因为 8080 已在您的计算机上使用。例如:
docker run --rm \
--name keycloak \
--net keycloak-network \
-e KEYCLOAK_USER=myadmin \
-e KEYCLOAK_PASSWORD=mypassword \
-p 9990:8080 \
-p 9991:8443 \
jboss/keycloak
Keycloak admin UI 将在以下时间可用:
http://<ip of the host machine\>:9990/
https://<ip of the host machine\>:9991/
(在这种情况下会生成自签名证书,因此您需要在浏览器中批准 TLS 例外)
如果像我这样的人会尽快从安装 Keycloak 开始Docker。
在 Docker 上安装 Keycloak 的完整路径,然后可以通过端口 9990 访问 Web UI(您可以在最后一个命令中更改它):
docker network create keycloak-network
docker run -d --name postgres --net keycloak-network -e POSTGRES_DB=keycloak -e POSTGRES_USER=keycloak -e POSTGRES_PASSWORD=password postgres
docker run --rm --name keycloak --net keycloak-network -e KEYCLOAK_USER=myadmin -e KEYCLOAK_PASSWORD=mypassword -e DB_USER=keycloak -e DB_PASSWORD=password -p 9990:8080 -p 9991:8443 jboss/keycloak
与 topickstarter 和之前答案的不同之处在于避免了以下错误:
"WFLYCTL0113: '' is an invalid value for parameter user-name
通过在最后一条命令中提供数据库用户名和密码。