[转] 利用dockerize模板为容器内应用生成配置文件和环境变量
Posted 天空之城
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[转] 利用dockerize模板为容器内应用生成配置文件和环境变量相关的知识,希望对你有一定的参考价值。
【FROM】 https://blog.csdn.net/liucaihong123/article/details/51945413
首先试验一下dockerize的可用性:
最近一个docker容器里面的应用启动依赖于一个配置文件cfg.json
设置模板文件cfg.template.json格式如下:
{ "debug": true, "hostname": {{ default .Env.HOSTNAME "\"\"" }}, "ip": {{ default .Env.IP "\"\"" }}, "plugin": { "enabled": {{ default .Env.PLUGIN_ENABLED "false" }}, "dir": {{ default .Env.PLUGIN_DIR "\"./plugin\"" }}, "git": {{ default .Env.PLUGIN_GIT "\"https://github.com/open-falcon/plugin.git\"" }}, "logs": {{ default .Env.PLUGIN_LOGS "\"./logs\"" }} }, }
在~/.bashrc中添加HOSTNAME,IP ,PLUGIN_ENABLED ,PLUGIN_DIR ,PLUGIN_GIT ,PLUGIN_LOGS 这几个环境变量,假如cfg.template.json在当前目录下,执行如下命令:
dockerize -template ./cfg.template.json:./cfg.json
就会按照模板文件生成cfg.json配置文件,注意:假如~/.bashrc中没有配置PLUGIN_GIT 环境变量,则会按照模板中的默认值"https://github.com/open-falcon/plugin.git"生成配置文件。
以下是生成的配置文件cfg.json:
{ "debug": true, "hostname": "node2", "ip": "", "plugin": { "enabled": false, "dir": "./plugin", "git": "https://github.com/open-falcon/plugin.git", "logs": "./logs" }, }
测试成功。
以后在打包镜像的过程中,利用dockerize将模板中参数传到镜像中,具体用法参考文章:https://segmentfault.com/a/1190000000728440
转载请注明出处:http://blog.csdn.net/liucaihong123/article/details/51945413
以上是关于[转] 利用dockerize模板为容器内应用生成配置文件和环境变量的主要内容,如果未能解决你的问题,请参考以下文章