在本地运行jboss/keycloak
容器时,我会尝试添加更多软件。
到目前为止,我已经尝试过:
~# yum install jq
bash: yum: command not found
~# apt-get install jq
apt-get: command not found
有人知道我怎样才能安装更多的软件吗?
# uname -a
Linux 935559ef2e4c 4.19.76-linuxkit #1 SMP Tue May 26 11:42:35 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
更新#1
看起来microdnf
是我必须使用的,但我仍然会遇到错误:
root@276cdd5cc962 /]# microdnf update -y
(microdnf:1614): librhsm-WARNING **: 20:38:39.628: Found 0 entitlement certificates
(microdnf:1614): librhsm-WARNING **: 20:38:39.630: Found 0 entitlement certificates
(microdnf:1614): libdnf-WARNING **: 20:38:39.630: Loading "/etc/dnf/dnf.conf": IniParser: Can't open file
Downloading metadata...
Downloading metadata...
Downloading metadata...
Nothing to do.
文件"/etc/dnf/dnf.conf";不存在。
容器本身正在使用RedHats通用基本映像,并且似乎使用microdnf来管理软件。
检查jboss/keycloft的dockerfile(https://hub.docker.com/r/jboss/keycloak/dockerfile)检查它是如何完成的。有趣的部分是:
RUN microdnf update -y && microdnf install -y glibc-langpack-en gzip hostname java-11-openjdk-headless openssl tar which && microdnf clean all
因此,您可以尝试使用microdnf命令添加其他软件。
一个更好的解决方案可能是从jboss/keycloft中创建自己的Dockerfile来添加额外的软件。
请参阅https://www.keycloak.org/server/containers对于钥匙斗篷21.1.X:"安装额外的RPM软件包
如果您尝试在FROM quay.io/keycapture/keycapture阶段安装新软件,您会注意到microdnf、dnf甚至rpm都没有安装。此外,可用的软件包非常少,只够bash shell和运行Key斗篷本身。这是由于采取了安全加固措施,减少了Keycloft容器的攻击面">