码迷,mamicode.com
首页 > 其他好文 > 详细

关于docker的配置文件与环境变量的小发现

时间:2021-04-15 12:49:51      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:传递   get   百度   info   文件   配置   ima   lazy   打包   

最近初初接触docker,发现有一点在使用时很不方便,就是配置文件的修改。

例如nginx的镜像,nginx.conf文件中的listen端口、servername等,
解决方案1:通过挂载外部nginx.conf替换容器内文件,可以解决问题。但总觉得把整个配置文件暴露在外不方便,且让运维人员去一个复杂文件中找修改值会增加工作难度
解决方案2:重新打包nginx镜像,增加shell脚本,通过sed命令替换指定变量;启动镜像时通过变量名传递要修改的配置。
但shell脚本编写sed替换总是遇到各种麻烦时,且菜鸟写的dockerfile文件缺失也很菜,无端引入很多坑。
同时,通过变量传递的值有时会莫名其妙替换掉一些关键配置。

后来仔细研究发现docker自身会留出一些变量设置,方便用户通过变量向配置文件中传递值。这就方便快捷的解决了配置文件关键参数修改的问题,同时也解释了为什么一些核心参数值莫名被修改问题,因为你的变量名正好使用了docker预留的变量名。
-----------------------------------关键内容来了------------------------------------------
如何了解docker镜像提供了哪些环境变量可以使用,看官方,看官方,看官方,重要的事说三遍,不要百度盲目搜搜搜
https://hub.docker.com/_/nginx

技术图片
技术图片


来个实例:

关于docker的配置文件与环境变量的小发现

标签:传递   get   百度   info   文件   配置   ima   lazy   打包   

原文地址:https://www.cnblogs.com/sylvia-liu/p/14661288.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!