Ubuntu 18 下修改docker 配置文件不生效问题解决

本地搭建了一个vmware ,装了一个 ubuntu18.04 64,想用一下docker(18.06.0-CE),安装成功,启动成功,想修改一下启动的配置文件,
sudo vi /etc/default/docker
加入下列信息:
DOCKER_OPTS=”-H tcp://localhost:4243 -H unix:///var/run/docker.sock” 注:我这里只是为了设置启动的ip与port
修改完以后,重载 sudo systemctl daemon-reload ,重启 sudo service docker restart ,发现配置文件没有起作用。
从网上翻找了各种帖子,有两种改法:
1、修改/usr/lib/systemd/system/docker.service这个文件,
[Service]下添加 EnvironmentFile=-/etc/default/docker,在ExecStart末尾增加 $DOCKER_OPTS
可我的ubuntu18.04 在/usr/lib/systemd 目录下就没有system这个子目录,我抱着试一试的心态创建建了目录,创建了文件docker.service,把内容加上,结果是不行,没起作用。2、创建/etc/systemd/system/docker.service.d/Using_Environment_File.conf 这个文件,然后写入以下内容:
[Service]
EnvironmentFile=-/etc/default/docker
ExecStart=
ExecStart=/usr/bin/docker daemon -H fd:// $DOCKER_OPTS
发现这个明显不对,有两个ExecStart=,也是抱着试一试的心态,结果还是不行,重新启动的时候还报错了,docker都启动不起来了。

后来继续寻找,各种搜,无意间发现了这个命令 systemctl status docker.service,,执行一下,发现如下内容:

● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2018-07-31 03:00:47 UTC; 6s ago
Docs: https://docs.docker.com
Main PID: 5993 (dockerd)
Tasks: 24
CGroup: /system.slice/docker.service
├─5993 /usr/bin/dockerd -H fd://
└─6015 docker-containerd –config /var/run/docker/containerd/containerd.toml

Jul 31 03:00:46 guomhlinux dockerd[5993]: time=”2018-07-31T03:00:46.559740616Z” level=info msg=”ClientConn switching balancer to \
Jul 31 03:00:46 guomhlinux dockerd[5993]: time=”2018-07-31T03:00:46.559901479Z” level=info msg=”pickfirstBalancer: HandleSubConnSt
Jul 31 03:00:46 guomhlinux dockerd[5993]: time=”2018-07-31T03:00:46.560664297Z” level=info msg=”pickfirstBalancer: HandleSubConnSt
Jul 31 03:00:46 guomhlinux dockerd[5993]: time=”2018-07-31T03:00:46.560722190Z” level=info msg=”Loading containers: start.”
Jul 31 03:00:46 guomhlinux dockerd[5993]: time=”2018-07-31T03:00:46.864039151Z” level=info msg=”Default bridge (docker0) is assign
Jul 31 03:00:47 guomhlinux dockerd[5993]: time=”2018-07-31T03:00:47.077682678Z” level=info msg=”Loading containers: done.”
Jul 31 03:00:47 guomhlinux dockerd[5993]: time=”2018-07-31T03:00:47.270870242Z” level=info msg=”Docker daemon” commit=0ffa825 grap
Jul 31 03:00:47 guomhlinux dockerd[5993]: time=”2018-07-31T03:00:47.271274799Z” level=info msg=”Daemon has completed initializatio
Jul 31 03:00:47 guomhlinux dockerd[5993]: time=”2018-07-31T03:00:47.298759500Z” level=info msg=”API listen on /var/run/docker.sock
Jul 31 03:00:47 guomhlinux systemd[1]: Started Docker Application Container Engine.

Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
注意看这句,我去!原来docker.service 在这儿呢啊,这下找到病根了,直接找到这个文件,结合前面所述两种修改方式,修改了这个文件,如下:
在[Service]下加入
EnvironmentFile=-/etc/default/docker
-代表ignore error
修改
ExecStart=/usr/bin/docker daemon -H fd://
改为
ExecStart=/usr/bin/docker daemon -H fd:// $DOCKER_OPTS
然后 重载 sudo systemctl daemon-reload ,重启 sudo service docker restart
在查看
ps -ef|grep [d]ocker
发现已经生效,如下:
root 6244 1 0 03:03 ? 00:00:04 /usr/bin/dockerd -H fd:// -H tcp://localhost:4243 -H unix:///var/run/docker.sock
root 6268 6244 0 03:03 ? 00:00:04 docker-containerd –config /var/run/docker/containerd/containerd.toml

在这里记录一下,方便自己,也方便遇到相同问题的朋友。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值