作者:mobiledu2502897851 | 来源:互联网 | 2023-10-13 09:10
```bashecho设置阿里云镜像仓库mkdiretcyum.repos.dbak&&mvetcyum.repos.d.repoetcyum.repos.dbakcurloetc
echo "设置阿里云镜像仓库"
mkdir /etc/yum.repos.d/bak && mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
cat < /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
yum clean all && yum makecache && yum makecache fast
echo "安装依赖包以及相关工具"
yum install -y yum-utils device-mapper-persistent-data lvm2 bind-utils
################### 卸载之前的docker ##########################
yum remove docker docker-ce docker-ce-cli docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine docker-ce-cli
rm -rf /etc/systemd/system/docker.service.d
rm -rf /var/lib/docker
rm -rf /var/run/docker
# 查看还有没有存在的docker组件
rpm -qa|grep docker
# 有则通过命令 yum -y remove XXX 来删除,比如:
yum remove docker-ce-cli
################################
# 不能安装最新版本的docker,kubelet最大支持到docker 18.09版本
# 查看当前仓库docker版本
yum list docker-ce.x86_64 --showduplicates |sort -r
yum list docker-ce-cli.x86_64 --showduplicates |sort -r
# 安装指定docker版本,18.09。9版本的docker-ce和docker-ce-cli
yum install -y --setopt=obsoletes=0 docker-ce-18.09.9-3.el7 docker-ce-cli-18.09.9-3.el7
##################### 修改Docker默认镜像和容器的存储位置 ##########################
# Docker默认的镜像和容器存储位置在/var/lib/docker中
# 修改docker.service文件
vim /lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --graph=/data/docker --storage-driver=overlay --registry-mirror=https://jxus37ad.mirror.aliyuncs.com
# --graph=/data/docker:docker新的存储位置
# --storage-driver=overlay2 : 当前docker所使用的存储驱动 (存储驱动不改也会变成overlay2)
# --registry-mirror=https://jxus37ad.mirror.aliyuncs.com : docker镜像拉取地址
# 或者可以通过文件/etc/docker/daemon.json来设置
cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://tqvgn53t.mirror.aliyuncs.com"],
}
systemctl daemon-reload
systemctl restart docker
# 查看docker信息
docker info
######################################################################################
# 可以考虑修改一下dockerm默认的镜像存储目录
systemctl enable docker && systemctl start docker
# 确认一下iptables filter表中FOWARD链的默认策略(pllicy)为ACCEPT
iptables -nvL
cat > /etc/docker/daemon.json <{
"registry-mirrors": ["https://tqvgn53t.mirror.aliyuncs.com"],
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
}
}
EOF
systemctl restart docker.service
docker info | grep Cgroup