【3.8】docker基础知识 Config

https://docs.docker.com/engine/reference/commandline/config/
https://zhuanlan.zhihu.com/p/443404105

官网介绍

查看官网介绍,config是daemon API 1.30之后引入的,它运行在swarm上的命令。


image.png

命令介绍

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信息,会存储在容器路径 / 下;

你可能感兴趣的:(【3.8】docker基础知识 Config)