[转帖]Docker的daemon.json的作用
Docker(十六)-Docker的daemon.json的作用
https://www.cnblogs.com/zhuochong/p/10070434.html jfrog 培训的时候 说过这个地方 但是也记不太清楚了先转帖一下 再做实验.
docker安装后默认没有daemon.json这个配置文件,需要进行手动创建。配置文件的默认路径:/etc/docker/daemon.json
一般情况,配置文件 daemon.json中配置的项目参数,在启动参数中同样适用,有些可能不一样(具体可以查看官方文档),但需要注意的一点,配置文件中如果已经有某个配置项,则无法在启动参数中增加,会出现冲突的错误。
如果在daemon.json文件中进行配置,需要docker版本高于1.12.6(在这个版本上不生效,1.13.1以上是生效的)
参数
daemon.json文件可配置的参数表,我们在配置的过程中,只需要设置我们需要的参数即可,不必全部写出来。详细参考官网。
官方的配置地址:https://docs.docker.com/engine/reference/commandline/dockerd/#/configuration-reloading。
官方的配置地址:https://docs.docker.com/engine/reference/commandline/dockerd/#options
官方的配置地址:https://docs.docker.com/engine/reference/commandline/dockerd/#/linux-configuration-file
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
{"api-cors-header":"","authorization-plugins":[],"bip": "","bridge":"","cgroup-parent":"","cluster-store":"","cluster-store-opts":{},"cluster-advertise":"","debug": true, #启用debug的模式,启用后,可以看到很多的启动信息。默认false"default-gateway":"","default-gateway-v6":"","default-runtime":"runc","default-ulimits":{},"disable-legacy-registry":false,"dns": ["192.168.1.1"], # 设定容器DNS的地址,在容器的 /etc/resolv.conf文件中可查看。"dns-opts": [], # 容器 /etc/resolv.conf 文件,其他设置"dns-search": [], # 设定容器的搜索域,当设定搜索域为 .example.com 时,在搜索一个名为 host 的 主机时,DNS不仅搜索host,还会搜索host.example.com 。 注意:如果不设置, Docker 会默认用主机上的 /etc/resolv.conf 来配置容器。"exec-opts": [],"exec-root":"","fixed-cidr":"","fixed-cidr-v6":"","graph":"/var/lib/docker", #已废弃,使用data-root代替,这个主要看docker的版本"data-root":"/var/lib/docker", #Docker运行时使用的根路径,根路径下的内容稍后介绍,默认/var/lib/docker"group": "", #Unix套接字的属组,仅指/var/run/docker.sock"hosts": [], #设置容器hosts"icc": false,"insecure-registries": [], #配置docker的私库地址"ip":"0.0.0.0","iptables": false,"ipv6": false,"ip-forward": false, #默认true, 启用 net.ipv4.ip_forward ,进入容器后使用 sysctl -a | grepnet.ipv4.ip_forward 查看"ip-masq":false,"labels":["nodeName=node-121"], # docker主机的标签,很实用的功能,例如定义:–label nodeName=host-121"live-restore": true,"log-driver":"","log-level":"","log-opts": {},"max-concurrent-downloads":3,"max-concurrent-uploads":5,"mtu": 0,"oom-score-adjust":-500,"pidfile": "", #Docker守护进程的PID文件"raw-logs": false,"registry-mirrors":["xxxx"], #镜像加速的地址,增加后在 docker info中可查看。"runtimes": {"runc": {"path": "runc"},"custom": {"path":"/usr/local/bin/my-runc-replacement","runtimeArgs": ["--debug"]}},"selinux-enabled": false, #默认 false,启用selinux支持"storage-driver":"","storage-opts": [],"swarm-default-advertise-addr":"","tls": true, #默认 false, 启动TLS认证开关"tlscacert": "", #默认 ~/.docker/ca.pem,通过CA认证过的的certificate文件路径"tlscert": "", #默认 ~/.docker/cert.pem ,TLS的certificate文件路径"tlskey": "", #默认~/.docker/key.pem,TLS的key文件路径"tlsverify": true, #默认false,使用TLS并做后台进程与客户端通讯的验证"userland-proxy":false,"userns-remap":""} |
上述是官网docs提供的一个示例配置,我们可以参考,选择性的配置其中的部分内容。
示例
1、如何配置 registry 私库相关的参数
涉及以下2个参数:
|
1
2
3
|
"insecure-registries": [], #这个私库的服务地址"registry-mirrors": [], #私库加速器 |
2.配置示例:
|
1
2
3
4
5
6
7
8
9
10
11
|
# cat /etc/docker/daemon.json{"registry-mirrors": ["https://d8b3zdiw.mirror.aliyuncs.com"],"insecure-registries": ["https://ower.site.com"],} |
配置与应用
1.默认没有文件,所以我们需要先创建,进入/etc/docker目录下,记得创建的文件所有者是root(vim或touch,记得chown修改所有者)
-rw-r--r-- 1 root root 71 Dec 19 17:25daemon.json
2.在文档中配置想要添加的参数:如,镜像加速器网站,私库网站
|
1
2
3
4
5
6
7
8
9
10
|
# cat /etc/docker/daemon.json{"registry-mirrors":["https://d8b3zdiw.mirror.aliyuncs.com"],"insecure-registries": ["https://ower.site.com"],} |
3.创建并修改完daemon.json文件后,需要让这个文件生效
a.修改完成后reload配置文件
sudo systemctl daemon-reload
b.重启docker服务
sudo systemctl restart docker.service
c.查看状态
sudo systemctl status docker -l
d.查看服务
sudo docker info
当我们需要对docker服务进行调整配置时,不用去修改主文件 docker.service的参数,通过daemon.json配置文件来管理,更为安全、合理。
[转帖]Docker的daemon.json的作用的更多相关文章
- Docker(十六)-Docker的daemon.json的作用
docker安装后默认没有daemon.json这个配置文件,需要进行手动创建.配置文件的默认路径:/etc/docker/daemon.json 一般情况,配置文件 daemon.json中配置的项 ...
- 修改 Docker 的 daemon.json后启动失败
创建Harbor要把register 换成Harbor地址 vim /etc/docker/daemon.json添加{ "insecure-registries":[" ...
- Docker修改daemon.json后无法启动的问题
本文的运行环境为Centos 7.3,Docker与Kubernetes的安装方式见kubeadm安装kubernetes V1.11.1 集群 最近在整理Docker和Kubernetes中的日志与 ...
- docker daemon文件/etc/docker/daemon.json配置
On Linux The default location of the configuration file on Linux is /etc/docker/daemon.json. The --c ...
- docker daemon.json 配置
下面是自己设置的 /etc/docker/daemon.json 文件中的配置案例 [root@master docker]# cat daemon.json { "registry-mir ...
- docker 配置文件:/etc/docker/daemon.json
/etc/docker/daemon.json 是 docker 的配置文件,默认是没有的,需要我们手动创建,可配置项如下: [root@localhost ~]$ vim /etc/docker/d ...
- 修改/etc/docker/daemon.json中的log-opts配置发现无效 docker 限制日志大小
https://colobu.com/2018/10/22/no-space-left-on-device-for-docker/ 在/etc/docker/daemon.json中修改或添加log- ...
- Docker daemon.json 的配置项目合集
这几天看了一点docker相关的东西, 在学习中: 看了下园友的blog 感觉很好 这里 学习一下. https://www.cnblogs.com/pzk7788/p/10180197.html 其 ...
- 通过daemon.json配置docker 2375 API端口,配置私有http仓库
编辑daemon.json vi /etc/docker/daemon.json 配置如下内容即可 { "hosts":[ "tcp://0.0.0.0:2375&quo ...
随机推荐
- 使用selenium时,使用从系统启动浏览器与通过自动化驱动方式启动浏览器控件ID不一样解决方法
最近遇到一个怪事,通过正常打开浏览器,按照正常的web登录然后点击进入系统流程,将各控件的ID识别成功,然后使用 python3+selenium写好脚本,高高兴兴的用脚本跑时老是提示找不到控件,然后 ...
- 使用Docker在本地搭建Hadoop分布式集群
学习Hadoop集群环境搭建是Hadoop入门必经之路.搭建分布式集群通常有两个办法: 要么找多台机器来部署(常常找不到机器) 或者在本地开多个虚拟机(开销很大,对宿主机器性能要求高,光是安装多个虚拟 ...
- DNS原理-HTTP原理-TCP原理
第一章:企业DNS原理 相信大家都知道windows和linux的hosts文件是:IP地址和域名的对应关系,我们一般访问网站的步骤: 打开网页-----输入网址-------查看本地的DNS库是否存 ...
- python3 生成器和生成器表达式
''' 生成器:函数中有yield就是生成器函数 生成器本质是一个迭代器 yield后面的值会作为返回值返回. ''' def func(): print("apple") pri ...
- oracle SQL 执行进度
SELECT SS.USERNAME, SS.SID, SS.SERIAL#, SS.MACHINE, SS.PROGRAM, SL.OPNAME, SL.TARGET, SL.START_TIME, ...
- C#高性能二进制序列化
二进制序列化可以方便快捷的将对象进行持久化或者网络传输,并且体积小.性能高,应用面甚至还要高于json的序列化:开始之前,先来看看dotcore/dotne自带的二进制序列化:C#中对象序列化和反序列 ...
- pip install报错Can't roll back cryptography; was not uninstalled
当使用pip install或者pip install --upgrade报错 Can't roll back cryptography; was not uninstalled 可以进行以下的尝试: ...
- 深入理解[Master-Worker模式]原理与技术
Master-Worker模式是常用的并行模式之一.它的核心思想是,系统由两类进程协作工作:Master进程和Worker进程.Master进程负责接收和分配任务,Worker进程负责处理子任务.当各 ...
- Spring Boot 2 (十):Spring Boot 中的响应式编程和 WebFlux 入门
Spring 5.0 中发布了重量级组件 Webflux,拉起了响应式编程的规模使用序幕. WebFlux 使用的场景是异步非阻塞的,使用 Webflux 作为系统解决方案,在大多数场景下可以提高系统 ...
- 深入浅出经典面试题:从浏览器中输入URL到页面加载发生了什么 - Part 3
备注: 因为文章太长,所以将它分为三部分,本文是第三部分. 第一部分:深入浅出经典面试题:从浏览器中输入URL到页面加载发生了什么 - Part 1 第二部分:深入浅出经典面试题:从浏览器中输入URL ...