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
修改成功 后的网桥信息
查看网桥数据
网桥修改成功后,网卡的网段和子网掩码都修改了
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
下一篇: 吕布为什么会屡屡遭受背叛?原因是什么