k8凯发网站

当前位置: > k8凯发网站 >

Core 使用 K8S ConfigMap的正确姿势

时间:2019-11-21 20:36    作者:admin     点击:

  文件中。这里面有一个问题就是,在使用容器部署时,每次修改配置文件都需要重新构建镜像。当然你也可能会说,我的配置文件很稳定不需要修改,但你又如何确保配置文件中一些机密配置的安全问题呢?比如暴露了你的远程数据库的连接信息,哪天被员工不小心删库跑路了呢?那接下来就来讲解下如何在.NET Core 中正确使用ConfigMap。

  K8S中引入了ConfigMap/Secret来存储配置数据,分别用于存储非敏感信息和敏感信息。其目的在于将应用和配置解耦,以确保容器化应用程序的可移植性。

  玩耍K8S,请先自行准备环境,Win10用户可以参考我的上篇文章ASP.NET Core 借助 K8S 玩转容器编排来准备环境。

  从上面的输出结果来看,其中包含了rn换行符,显然不是我们想要的结果。猜测是因为Windows和Linux系统换行符的差异导致的。先来插播下换行符的知识:

  所以解决方式就很简单,将换行符切换为Linux系统的n即可。操作方式很简单:对于VS Code 只需要按图下所示操作即可,点击右下角的CRLF,选择LF即可。

  对于VS,如果VS打开json文件有下面的提示,直接切换就好。没有,可以安装Line Endings Unifier)扩展来统一处理。

  ConfigMap的应用很简单,只需要将configmap挂载到容器内的独立目录即可。

  以Volume方式挂载的ConfigMap支持热更新(大概需要10s左右)。但一种情况例外,就是指定subPath的情况下,更新ConfigMap,容器中挂载的ConfigMap是不会自动更新的。

  对于这种情况,也很好处理,将ConfigMap挂载到/app目录下一个单独目录就好,比如挂载到/app/config目录,然后修改配置文件的加载路径即可。

  本文就Core如何应用ConfigMap进行了详细的介绍。其中最关键在于appsettings.json到ConfigMap的转换,以及挂载目录的指定。希望对你有所帮助。而至于Secret的应用,原理相通了,关键在于Secret的生成,这里就交给你自己探索了。返回搜狐,查看更多

咨询中心