在本文中,我们将给您介绍关于Docker的daemon.json的作用的详细内容,并且为您解答docker/daemon.json的相关问题,此外,我们还将为您提供关于/etc/docker/daem
在本文中,我们将给您介绍关于Docker 的 daemon.json 的作用的详细内容,并且为您解答docker/daemon.json的相关问题,此外,我们还将为您提供关于/etc/docker/daemon.json、Cannot connect to the Docker daemon at tcp://xxx.xx.x.x:2376. Is the docker daemon running?、Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?、Cannot connect to the Docker datemon at tcp://0.0.0.0:2375 is the docker daemon runing?的知识。
本文目录一览:- Docker 的 daemon.json 的作用(docker/daemon.json)
- /etc/docker/daemon.json
- Cannot connect to the Docker daemon at tcp://xxx.xx.x.x:2376. Is the docker daemon running?
- Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
- Cannot connect to the Docker datemon at tcp://0.0.0.0:2375 is the docker daemon runing?
Docker 的 daemon.json 的作用(docker/daemon.json)
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 |
|
上述是官网 docs 提供的一个示例配置,我们可以参考,选择性的配置其中的部分内容。
示例
1、如何配置 registry 私库相关的参数
涉及以下 2 个参数:
1 2 3 |
|
2. 配置示例:
1 2 3 4 5 6 7 8 9 10 11 |
|
配置与应用
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 |
|
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 配置文件来管理,更为安全、合理。
/etc/docker/daemon.json
/etc/docker/daemon.json
{
"graph": "/data/docker",
"storage-driver": "overlay2",
"insecure-registries": ["registry.access.redhat.com","quay.io","harbor.od.com"],
"registry-mirrors": ["https://q2gr04ke.mirror.aliyuncs.com"],
"bip": "172.7.22.1/24",
"exec-opts": ["native.cgroupdriver=systemd"],
"live-restore": true
}
上文解释
{
"graph": "/data/docker", //docker的工作目录。会自动生成一些文件夹
"storage-driver": "overlay2", //存储驱动。使用overlay2
"insecure-registries": ["registry.access.r示例edhat.com","quay示例.io"], //不安全的registries。自己的私有仓库也填在里边
"registry-mirrors": ["https://q2gr04ke.mirror.aliyuncs.com"], //镜像加速源。这里是阿里的
"bip": "172.7.22.1/24", //docker的网络地址
"exec-opts": ["native.cgroupdriver=systemd"],
"live-restore": true
}
Cannot connect to the Docker daemon at tcp://xxx.xx.x.x:2376. Is the docker daemon running?
一.问题描述
在用docker部署jenkins实现自动化部署服务时,报错:
二.问题分析:
经前辈讲解得知,需要在Jenkins里面运行docker,而docker分为客户端和服务端,普通的docker命令由客户端操作,但客户端需要连接到服务端,而此时Jenkins是一个单独的容器,可以看做一个单独的系统,它不知道docker是谁,所以需要把docker映射进去了,但是我们映射的只是客户端,所以需要指定它连接到宿主机的服务端。在jenkins配置的docker也是客户端。
三.问题解决:
在运行jenkins时,挂载所需的环境,在用docker-compose运行时,可以直接在docker-compose.yml添加相应的映射环境
environment:
DOCKER_HOST: tcp://xx.xx.xx.xx:2376
然后在储存驱动修改映射
{
"hosts": [
"tcp://xx.xx.xx.xx:2376",
"unix:///var/run/docker.sock"
]
}
挂载相应文件目录
需要注意的是,上述映射的ip是jenkins所在的ip,因为jenkins是用户
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
问题
在 WSL(Windows Subsystem for Linux )中运行 docker version
的时候,终端最后一行报错了
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
表明 docker 并没有正常启动,基本上就是要重启下 docker 就可以。
解决
小编的 WSL 安装的是 Ubuntu 系统,使用命令三成功启动 docker,不熟悉 Linux 的话,你可以依次尝试以下命令。
- 命令一
systemctl start docker
- 命令二
sudo dockerd
dockerd 是 docker 容器的守护程序服务,因为它不在后台运行,我们无法采取与服务相关的任何操作,需要重新启动。
- 命令三
sudo service --status-all
sudo service docker start
总结
以上就是小编在使用 docker 的过程中总结的一点经验,更多 docker 学习欢迎关注我的更新。
参考
- Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
- Cannot connect to the Docker daemon at unix:/var/run/docker.sock. Is the docker daemon running?****
Cannot connect to the Docker datemon at tcp://0.0.0.0:2375 is the docker daemon runing?
一、系统环境:
在Windows 7 64位上,采用Vmware workstation 12安装了CenOS7.5 64位。
二、问题
在CentOS7.5里安装了Docker,启动docker服务,输入docker version,则出现错误信息:
Cannot connect to the Docker datemon at tcp://0.0.0.0:2375 is the docker daemon runing?
三、解决过程
1、配置DOCKER_HOST
sudo vim /etc/profile.d/docker.sh
添加下面内容:
export DOCKER_HOST=tcp://localhost:2375
2、应用
1)、source /etc/profile
2)、source /etc/bashrc
3、配置启动文件
1)、sudo vim /lib/systemd/system/docker.service
2)、修改下面语句
ExecStart=/usr/bin/dockerd -H unix://
修改为:
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock -H tcp://0.0.0.0:7654
4、重载配置和重启
1)、sudo systemctl daemon-reload
2)、sudo systemctl restart docker.service
5、查看
docker version
说明已经正常。
今天关于Docker 的 daemon.json 的作用和docker/daemon.json的讲解已经结束,谢谢您的阅读,如果想了解更多关于/etc/docker/daemon.json、Cannot connect to the Docker daemon at tcp://xxx.xx.x.x:2376. Is the docker daemon running?、Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?、Cannot connect to the Docker datemon at tcp://0.0.0.0:2375 is the docker daemon runing?的相关知识,请在本站搜索。
本文标签: