千家信息网

Docker中修改/etc/default/docker里的DOCKER_OPTS参数不生效怎么办

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,这篇文章给大家分享的是有关Docker中修改/etc/default/docker里的DOCKER_OPTS参数不生效怎么办的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。默
千家信息网最后更新 2025年01月24日Docker中修改/etc/default/docker里的DOCKER_OPTS参数不生效怎么办

这篇文章给大家分享的是有关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 EngineDocumentation=http://docs.docker.comAfter=network.targetWants=docker-storage-setup.serviceRequires=docker-cleanup.timer[Service]Type=notifyNotifyAccess=allKillMode=process#添加我们自定义的配置文件EnvironmentFile=-/etc/default/docker #添加配置文件,(-代表ignore error)EnvironmentFile=-/etc/sysconfig/dockerEnvironmentFile=-/etc/sysconfig/docker-storageEnvironmentFile=-/etc/sysconfig/docker-networkEnvironment=GOTRACEBACK=crashEnvironment=DOCKER_HTTP_HOST_COMPAT=1Environment=PATH=/usr/libexec/docker:/usr/bin:/usr/sbinExecStart=/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 $MAINPIDLimitNOFILE=1048576LimitNPROC=1048576LimitCORE=infinityTimeoutStartSec=0Restart=on-abnormalMountFlags=slave[Install]WantedBy=multi-user.targetEnvironmentFile=-/etc/default/docker

修改以后,需要重载,然后重启服务才可以使用/etc/default/docker里定义的DOCKER_OPTS参数

#重载systemctl daemon-reload#重启docker服务service docker restart

docker环境配置文件

vi /etc/sysconfig/dockerDOCKER_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#配置dockervi /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

修改成功 后的网桥信息

查看网桥数据

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

感谢各位的阅读!关于"Docker中修改/etc/default/docker里的DOCKER_OPTS参数不生效怎么办"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

0