刚 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
来源: http://www.bubuko.com/infodetail-2867001.html