You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写与指定kubectl命令等效的ConfigMap YAML代码

等效ConfigMap YAML实现

kubectl create configmap mongo-initdb --from-file=init-mongo.js的逻辑是:自动以本地文件名init-mongo.js为ConfigMap的data键,键值为该文件的完整原文,生成的ConfigMap和以下YAML apply后的效果完全一致:

apiVersion: v1
kind: ConfigMap
metadata:
  name: mongo-initdb
data:
  init-mongo.js: |
    # 此处替换为你本地init-mongo.js文件的全部内容,保持原文件的换行、缩进格式即可
    # 常见Mongo初始化脚本示例参考:
    # db = db.getSiblingDB('appdb');
    # db.createUser({
    #   user: 'app_user',
    #   pwd: 'your_secure_password',
    #   roles: [{ role: 'readWrite', db: 'appdb' }]
    # });

注意事项

  • 不要随意修改data下的init-mongo.js键名,后续将ConfigMap挂载到Mongo容器的/docker-entrypoint-initdb.d/目录时,键名就是容器内的文件名,改名会导致初始化脚本无法被自动识别执行
  • YAML中|是多行文本标识,会保留后续文本的所有换行、缩进,粘贴原js文件内容时要保证文本整体缩进比init-mongo.js这一行多至少2个空格
  • 写完可以做正确性校验:先用原kubectl命令生成临时ConfigMap,执行kubectl get cm mongo-initdb -o yaml导出配置,和自己编写的YAML对比内容是否一致,确认无误后删除临时生成的ConfigMap,改用YAML方式部署即可

内容的提问来源于stack exchange,提问作者DireRaven

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 15:27:14