Nic*_*Ath 9 redhat docker keycloak
我通过运行.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)。提前致谢。
小智 6
如果您仍然出于某种原因想要exec进入容器,请尝试添加--user root到您的docker exec command.
只需 exec:ing 进入容器,而无需--user以 user 身份执行此操作jboss,该用户似乎拥有较少的权限。
看起来您正在尝试在 docker 世界中使用非 docker(老派)世界的方法。那是不对的。通常,您不需要转到容器并在那里编辑任何配置文件 - 该更改很可能会丢失(这取决于容器配置)。容器通常通过环境变量或卷进行配置。
如何使用 TLS 证书的示例:Keycloak Docker 需要 HTTPS
https://hub.docker.com/r/jboss/keycloak/也是检查可用环境变量的良好起点,这可以帮助您实现所需的目标。例如,PROXY_ADDRESS_FORWARDING=true启用选项,当您可以在负载均衡器后面运行 Keycloak 容器而无需触摸任何配置文件时。
我想说的是,在构建中添加自己的配置文件并不是最好的选择 - 您必须维护自己的映像。只需使用卷并使用主机操作系统文件系统中您自己的配置文件“覆盖”容器中的默认配置文件,例如:
-v /host-os-path/my-custom-standalone-ha.xml:/opt/jboss/keycloak/standalone/configuration/standalone-ha.xml
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5606 次 |
| 最近记录: |