我通过运行.yml使用 docker image 的文件来设置我的 Keycloak 识别服务器jboss/keycloak:9.0.0。
现在我想进入容器并修改一些文件以便进行一些测试。
不幸的是,当我进入正在运行的容器后,我意识到没有找到一些非常基本的 UNIX 命令,例如sudoor vi(以及更多)(以及我用来下载命令包但失败的命令,例如apt-getor )。yum
根据这个问题,容器的底层操作系统( Redhat Universal Base Image)似乎使用该命令microdnf来管理软件,但不幸的是,当我尝试使用此命令执行任何操作时,我收到以下消息:
错误:无法创建:/var/cache/yum/metadata
您能为我的案例提出任何解决方法吗?我只需要使用文本编辑器命令(如vi、 )和我的用户的 root 权限(因此命令如sudo、su或chmod)。提前致谢。
我正在尝试使用docker映像(https://hub.docker.com/r/jboss/keycloak/版本4.5.0-Final)部署keycloak,并面临设置SSL的问题。
根据文档
Keycloak映像允许您同时指定私钥和用于服务HTTPS的证书。在这种情况下,您需要提供两个文件:
tls.crt-证书tls.key-私钥这些文件需要挂载在/ etc / x509 / https目录中。该映像将自动将它们转换为Java密钥库,并重新配置Wildfly以使用它。
我按照给定的步骤进行操作,并为卷安装设置提供了一个包含必要文件(tls.crt和tls.key)的文件夹,但是我面临SSL握手问题,
ERR_SSL_VERSION_OR_CIPHER_MISMATCH
错误,尝试访问浏览器时阻止了它的加载。
我使用过letencrypt来生成pem文件,并使用openssl来创建.crt和.key文件。还尝试过仅使用openssl创建这些文件以缩小问题范围,并且行为相同(如果这很重要,请提供一些其他信息)
默认情况下,当我仅指定端口绑定-p 8443:8443而未指定证书卷挂载/ etc / x509 / https时,keycloak服务器会生成一个自签名证书,并且在浏览器中查看应用程序时看不到问题
我猜这可能是证书创建问题,而不是密钥遮罩特有的问题,但是,不确定如何使它起作用。任何帮助表示赞赏
我已经按照本教程并通过 Docker 使用 postgres 运行 keycloak。由于端口 8080 已被我的前端应用程序使用,因此它使用了 9990。正如日志所说:
13:26:00,602 INFO [org.jboss.as](控制器启动线程)WFLYSRV0060:Http 管理接口监听http://127.0.0.1:9990/management
13:26:00,603 INFO [org.jboss.as](控制器启动线程)WFLYSRV0051:管理控制台监听http://127.0.0.1:9990
但是当我通过浏览器访问这些 url 时,没有任何反应。我也试过去http://127.0.0.1:9990/auth/admin/但它不起作用。当我尝试连接时,我的 keycloak 控制台中没有任何显示。
我在没有任何额外设置的情况下遵循了教程。怎么了?
首先我创建一个用户定义网络:
docker network 创建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