开发者社区> 问答> 正文

如何从kubernetes configmap中执行bash命令?

k8s小能手 2018-12-14 14:59:07 481

我使用helm图表创建容器并将其部署到我的K8集群中。我的一个pod需要一个配有sdk密钥的配置文件,以便能够正常启动和运行。此sdk密钥被视为机密密钥,存储在AWS秘密管理器中。因此,我不想将配置文件烘焙到我的docker镜像中。我希望能够在运行时安装此配置文件。在这种情况下,Configmap似乎是一个不错的选择,除了我无法弄清楚如何在掌舵图安装期间从秘密管理器获取此sdk密钥。我的configmap的一部分看起来像这样

data:

  app.conf: |
  [sdkkey] # I want to be able to retrieve sdk from aws secrets manager

我正在寻找编写bash命令以使用aws cli来获取秘密的方法,但还没有看到从配置映射中执行bash命令的方法。

任何想法或替代解决方案?

存储 Kubernetes Shell 开发工具 Docker 容器 Perl
分享到
取消 提交回答
全部回答(1)
  • k8s小能手
    2019-07-17 23:20:58

    您无法在ConfigMap中执行某些操作,它只是一个静态清单。请改用init容器。

    ConfigMaps只是一个静态清单,可以从Kubernetes API读取,也可以在运行时作为文件或环境变量注入容器。无法执行ConfigMap。

    根据您的描述,听起来您最好的选择是使用init容器检索凭据并将其写入使用将使用凭据的应用程序安装到容器中的共享emptyDir卷。

    0 0
+ 订阅

云原生时代,是开发者最好的时代

推荐文章
相似问题