docker的daemon.json文件以及key,json文件的作用
1.静态的镜像文件转为动态容器
首先我们要知道静态的镜像怎么能够跑起来动态的容器呢?是什么使镜像能够转化为docker容器呢?这个时候我们就需要具体分析一下静态的镜像文件到底有什么?
docker镜像的内容包含两个部分,一个是镜像层中的文件,一个是镜像的json文件,json文件中json 文件属性中存在cmd, User、ExposedPorts、Entrypoint、NetworkDisabled 等一系列启动容器时所需的动态信息,那么当 Docker 运行时,首先提取最上层镜像的 json 文件,找到 config 属性中的 Cmd 命令,并在镜像层文件构成的容器 rootfs 中找到相应的执行程序,最终执行,完成容器的启动。
所以静态的镜像文件能够转化为动态的容器这个功能的实现是因为每个镜像都会有json文件,docker可以通过解析docker镜像的json文件,来获得镜像上面的进程,
2.key.json文件的作用
key.json文件是Docker在连接到其他TLS服务器(如注册表)时使用的Web格式的TLS连接的dockerd键.它在启动时由docker引擎自动生成。
3.docker的daemon.json文件的作用
docker安装后默认没有daemon.json这个配置文件,需要进行手动创建。配置文件的默认路径:/etc/docker/daemon.json
一般情况,配置文件 daemon.json中配置的项目参数,在启动参数中同样适用,有些可能不一样(具体可以查看官方文档),但需要注意的一点,配置文件中如果已经有某个配置项,则无法在启动参数中增加,会出现冲突的错误。
如果在daemon.json文件中进行配置,需要docker版本高于1.12.6(在这个版本上不生效,1.13.1以上是生效的)
具体配置请参考Docker的daemon.json的作用