所有kubernetes节点都需要安装docker,并且版本最好一致。
开始安装 # 删除老版本Docker及依赖,如果机器上装过其他版本的docker,可通过该命令进行老版本docker清理 [root@mimo222 ~]# yum remove docker docker-common container-selinux docker-selinux docker-engine # 安装 yum-config-manager [root@mimo222 ~]# yum -y install yum-utils # 导入yum源 [root@mimo222 ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # 更新repo [root@mimo222 ~]# yum makecache # 查看yum版本 [root@mimo222 ~]# yum list docker-ce.x86_64 --showduplicates |sort -r # 安装指定版本docker-ce 17.03被docker-ce-selinux依赖,不能直接yum安装docker-ce-selinux # 如果此处通过wget无法下载,可到网上查一下这个rpm包,下载下来然后拷贝到服务器���。 [root@mimo222 ~]# wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm [root@mimo222 ~]# rpm -ivh docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm # 安装docker [root@mimo222 ~]# yum -y install docker-ce-17.03.2.ce 查看docker版本 [root@mimo222 ~]# docker version Client: Version: 17.03.2-ce API version: 1.27 Go version: go1.7.5 Git commit: f5ec1e2 Built: Tue Jun 27 02:21:36 2017 OS/Arch: linux/amd64 Server: Version: 17.03.2-ce API version: 1.27 (minimum version 1.12) Go version: go1.7.5 Git commit: f5ec1e2 Built: Tue Jun 27 02:21:36 2017 OS/Arch: linux/amd64 Experimental: false 更改docker配置更改/usr/lib/systemd/system/docker.service启动文件
[root@mimo222 ~]# vi /usr/lib/systemd/system/docker.service [Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network-online.target firewalld.service Wants=network-online.target [Service] Type=notify ExecStart=/usr/bin/dockerd $DOCKER_NETWORK_OPTIONS $DOCKER_OPTS $DOCKER_DNS_OPTIONS ExecReload=/bin/kill -s HUP $MAINPID LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity TimeoutStartSec=0 Delegate=yes KillMode=process Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target对比初始安装docker后的docker.service文件内容,修改docker.service文件。
修改其他配置 [root@mimo222 ~]# mkdir -p /usr/lib/systemd/system/docker.service.d/docker-options.conf该文件中保存docker启动的一些参数
[root@mimo222 ~]# vi /usr/lib/systemd/system/docker.service.d/docker-options.conf # 文件中添加信息如下:(注意 Environment配置信息必须在同一行,如果出现换行会无法加载) [Service] Environment="DOCKER_OPTS=--insecure-registry=10.254.0.0/16 --graph=/opt/docker --disable-legacy-registry" [root@mimo222 ~]# vi /usr/lib/systemd/system/docker.service.d/docker-dns.conf # 添加如下 : [Service] Environment="DOCKER_DNS_OPTIONS=\ --dns 10.254.0.2 --dns 114.114.114.114 \ --dns-search default.svc.cluster.local --dns-search svc.cluster.local \ --dns-opt ndots:2 --dns-opt timeout:2 --dns-opt attempts:2"