1. 程式人生 > >CentOS7修改Docker默認啟動參數(/etc/default/docker文件不存在)

CentOS7修改Docker默認啟動參數(/etc/default/docker文件不存在)

mod process tco service cor 說明 mct des targe

剛Yum裝完發現是沒有網上所說的/etc/default/docker文件的,自己vim後其實也是不生效的。

因為Docker的systemd啟動腳本(/usr/lib/systemd/system/docker.service),默認是沒有加載到環境變量中的。

#查看配置文件
cat /usr/lib/systemd/system/docker.service
#以下是修改後的文件內容,加了2行
[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

添加的2行說明:

1. 加載的配置文件
EnvironmentFile=-/etc/default/docker

2. 然後在ExecStart這個配置中,添加引用的參數,另外此前一行結尾要加 $DOCKER_OPTS

自定義的docker環境配置文件

cat /etc/sysconfig/docker

#選擇網橋
#DOCKER_OPTS="-b=br0"
#指定DNS
DOCKER_OPTS="--dns 114.114.114.114 --dns 8.8.8.8"

#重載
systemctl daemon-reload

#重啟docker服務
systemctl restart docker

#查看 docker 啟動狀態

systemctl status docker

CentOS7修改Docker默認啟動參數(/etc/default/docker文件不存在)