我构建了一个kafka connect docker映像,并使用rancher启动kafka connect集群。所以我需要把keytab文件放到集群中。我不想将我的keytab文件构建到我构建的映像中,因为它很重要而且安全。所以我想使用rancher存储服务,但我不能将我的密钥表放入存储?我的问题是:如何在rancher或docker中管理我的安全文件?
vmjh9lq91#
base64编码keytab并将其作为环境变量传递给容器。创建 entrypoint 将base64解码值放入keytab文件的脚本。
entrypoint
export KEYTAB=$(cat /etc/krb5.keytab | base64) docker run -e KEYTAB my_image
在入口点脚本中:
printenv KEYTAB | base64 -d > /etc/krb5.keytab
最终,管理keytab的方式与管理所有其他容器机密的方式相同—只需对其进行base64编码,以便将其作为另一个字符串而不是文件进行管理。
1条答案
按热度按时间vmjh9lq91#
base64编码keytab并将其作为环境变量传递给容器。创建
entrypoint
将base64解码值放入keytab文件的脚本。在入口点脚本中:
最终,管理keytab的方式与管理所有其他容器机密的方式相同—只需对其进行base64编码,以便将其作为另一个字符串而不是文件进行管理。