Docker Config
https://docs.docker.com/engine/reference/commandline/config/
官网介绍
查看官网介绍,config是daemon API 1.30之后引入的,它运行在swarm上的命令
命令介绍
Command Description
docker config create Create a config from a file or STDIN
docker config inspect Display detailed information on one or more configs
docker config ls List configs
docker config rm Remove one or more configs
示例
# 新建一个my_config 添加两个label,存储在./config.json
docker config create --label env=dev --label rev=20170324 my_config ./config.json
# 查看详细信息my_config
docker config inspect my_config
# ls 过滤label是project
docker config ls --filter label=project
# 删除my_config
docker config rm my_config
使用
Configs 允许存储一些非敏感信息,比如在容器运行之外的一些配置文件。这种方式可以保证docker镜像更加通用,而不需要将配置文件或者是环境变量绑定到容器。对于敏感信息,比如数据库账号之类的,建议使用secrets
与secrets不同之处在于,configs并没有对数据进行加密,而是直接把配置文件挂载到容器的文件系统中。同时允许任何时刻删除或者添加configs,也可以共享configs;为了支持更高灵活性,configs内容可以是普通的字符串或者是二进制内容,当然二进制要保证大小在512kb之内
如果我们授权某个正在运行的service访问config,config信息会被以文件的形式挂载到容器里,请注意这里要与volumes区分。volumes是把宿主机文件系统中的文件,挂载到容器中;而config相当于是把swarm的配置信息以文件的形式存放在容器中,两者本质上的差异还是比较明显的。默认情况下,挂载到容器里的configs信息,会存储在容器路径 /