[转帖]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 ...
随机推荐
- Ant Design Pro的dva-loading
loading为dva的插件,全局可用,它里面维护了一些布尔值,用于控制loading动画效果的显示与隐藏,通过@connect()来注入使用 官网介绍如下: https://dvajs.com/ 在 ...
- WPF设计の画刷(Brush)
一.什么是画刷 画刷是是一种渲染方式,用于填充图形形状,如矩形.椭圆.扇形.多边形和封闭路径.在GDI+中,画刷分为以下几种:SolidBrush,TextureBrush,HatchBrush,Li ...
- 16.ajax_case02
# 抓取当当网书评 # http://product.dangdang.com/25340451.html import json import requests from lxml import e ...
- content-box和border-box
理解box-sizing属性border-box,content-box,其实也是理解正常盒模型与异常盒模型. 如果不做特殊说明,我们日常所用的div都是正常盒子模型. 正常盒子模型 正常盒子模型,是 ...
- 水题:P2799 国王的魔镜
思路:简单模拟即可.判断一下是不是回文,是回文看长度是不是偶数.是偶数的话,说明又可能是回文.依次这样处理.但是只要长度为奇数则一定是原来的长度直接输出即可. #include<iostream ...
- QT socket网络通信
https://blog.csdn.net/u013007900/article/details/50411796 里主要讲解如何实现TCP和UDP的简单通信. socket简介在LINUX下进行网络 ...
- Python 的全局变量
结论: Python 的全局变量只在本文件中生效. 定义全局变量的文件 G.py # define some global variable A = 1 B = 2 C = 3 def fuck(a= ...
- jenkins+svn+python+appium启动+mail+html报告
第一步:jenkins从svn中获取最新的测试代码 1.jenkins启动,进入jenkins目录,使用“java -jar jenkins.war”启动(安装后,jenkins已自启动,不用再自己启 ...
- P3372 【模板】线段树 1
题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.求出某区间每一个数的和 输入输出格式 输入格式: 第一行包含两个整数N.M,分别表示该数列数字的个数和操作的总个 ...
- JavaScript模块化思想之CommonJS、AMD、CMD、UMD
前一篇文章了解了什么是模块,这一篇就简单介绍一下如何定义并加载一个模块. 我所了解的三种模块加载方式分别是CommonJS.AMD和CMD 网上关于这三种模块加载方式讲解的文章很多,我就简单的做个介绍 ...