Docker之修改/etc/default/docker 里的DOCKER_OPTS参数不生效问题(排雷)

                                       

默认情况下,/etc/default/docker配置了不会生效的,我们需要手动添加到docker的环境设定中,需要配置的文件是/usr/lib/systemd/system/docker.service,需要添加EnvironmentFile=-/etc/default/docker,让后在ExecStart这个配置中,添加引用的参数$DOCKER_OPTS。置网桥的时候,我们在/etc/default/docker里添加了DOCKER_OPTS参数,但是DOCKER_OPTS参数不生效问题,网上给的教程太坑了,可能是因为他们是老版本的Docker问题和环境不一样的问题,修改了,根本不生效,当时菊花就疼了,
————————————————
docker.service
配置docker.service的时候,EnvironmentFile的文件默认配置了/etc/sysconfig/docker(基本配置)、/etc/sysconfig/docker-storage(存储)、/etc/sysconfig/docker-network(网络),我们想要/etc/default/docker 生效,我们就需要添加EnvironmentFile=-/etc/default/docker,让后在ExecStart这个配置中,添加引用的参数$DOCKER_OPTS,下面就是我的配置文件/usr/lib/systemd/system/docker.service
#修改配置文件

vi /usr/lib/systemd/system/docker.service

[Unit]
Description=Docker Application Container Engine
Documentation=http://docs.docker.com
After=network.target
Wants=docker-storage-setup.service
Requires=docker-cleanup.timer

[Service]
Type=notify
NotifyAccess=all
KillMode=process
#添加我们自定义的配置文件
EnvironmentFile=-/etc/default/docker #添加配置文件,(-代表ignore error)
EnvironmentFile=-/etc/sysconfig/docker
EnvironmentFile=-/etc/sysconfig/docker-storage
EnvironmentFile=-/etc/sysconfig/docker-network
Environment=GOTRACEBACK=crash
Environment=DOCKER_HTTP_HOST_COMPAT=1
Environment=PATH=/usr/libexec/docker:/usr/bin:/usr/sbin
ExecStart=/usr/bin/dockerd-current \
          --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
          --default-runtime=docker-runc \
          --exec-opt native.cgroupdriver=systemd \
          --userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
          $OPTIONS \
          $DOCKER_STORAGE_OPTIONS \
          $DOCKER_NETWORK_OPTIONS \
          $ADD_REGISTRY \
          $BLOCK_REGISTRY \
          $INSECURE_REGISTRY \
          $DOCKER_OPTS #需要引用的参数,也是网卡设定参数
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=1048576
LimitNPROC=1048576
LimitCORE=infinity
TimeoutStartSec=0
Restart=on-abnormal
MountFlags=slave

[Install]
WantedBy=multi-user.target
EnvironmentFile=-/etc/default/docker
————————————————
修改以后,需要重载,然后重启服务才可以使用/etc/default/docker里定义的DOCKER_OPTS参数

#重载 systemctl daemon-reload

#重启docker服务

service docker restart

docker环境配置文件

vi /etc/sysconfig/docker

DOCKER_OPTS="-b=br0"

#或者直接写数据

echo 'DOCKER_OPTS="-b=br0"' >> /etc/default/docker 

docker自定义网桥

#安装网桥工具
yum install bridge-utils  

#添加网桥
brctl addbr br0

#查看网桥
brctl show 

#设定网桥地址和子网掩码
ifconfig br0 192.168.110.1 netmask 255.255.255.0

#设定网桥
echo 'DOCKER_OPTS="-b=br0"' >> /etc/default/docker

#配置docker
vi /usr/lib/systemd/system/docker.service
#添加我们自己的配置文件
EnvironmentFile=-/etc/sysconfig/docker
#应用参数
ExecStart=/usr/bin/dockerd-current \
               --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
                --default-runtime=docker-runc \
                --exec-opt native.cgroupdriver=systemd \
                --userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
                $OPTIONS \
                $DOCKER_STORAGE_OPTIONS \
                $DOCKER_NETWORK_OPTIONS \
                $ADD_REGISTRY \
                $BLOCK_REGISTRY \
                $INSECURE_REGISTRY \
                $DOCKER_OPTS #添加网桥的参数

#重载
systemctl daemon-reload
#重启docker服务
service docker restart 
————————————————
修改成功 后的网桥信息

查看网桥数据

网桥修改成功后,网卡的网段和子网掩码都修改了

`daemon.json`是Docker的配置文件,其中包含了Docker守护进程的配置,可以用于设置各种选项,包括网络、存储、安全和日志等。下面是一些常见的`daemon.json`参数及其详细解释: - `debug`:启用或禁用调试模式。默认值为false。 - `experimental`:启用或禁用实验性功能。默认值为false。 - `log-driver`:指定Docker守护进程的日志驱动程序。默认值为`json-file`。 - `log-opts`:指定日志驱动程序的选项。例如,设置`max-size`和`max-file`选项以限制日志的大小和数量。 - `registry-mirrors`:指定镜像仓库的地址列表。可以提高镜像下载速度。 - `insecure-registries`:指定不需要进行TLS验证的镜像仓库地址列表。不建议使用此选项,因为它会降低镜像的安全性。 - `storage-driver`:指定Docker的存储驱动程序。默认值为`overlay2`。 - `storage-opts`:指定存储驱动程序的选项。例如,设置`size`选项以限制存储卷的大小。 - `max-concurrent-downloads`:指定最大并发下载数。默认值为3。 - `max-concurrent-uploads`:指定最大并发上传数。默认值为5。 - `default-ulimits`:指定默认的进程ulimit限制。 - `iptables`:启用或禁用Docker生成的iptables规则。默认值为true。 - `ipv6`:启用或禁用IPv6支持。默认值为false。 - `live-restore`:启用或禁用在Docker守护进程被重启时自动恢复容器。默认值为false。 - `userland-proxy`:启用或禁用Docker代理。默认值为true。 这些选项只是`daemon.json`参数的一小部分,您可以通过查看[Docker官方文档](https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file)来获取所有选项的详细说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值