设置阿里云镜像仓库并安装Docker

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 <<EOF > /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

mkdir -p /data/docker
mkdir -p /etc/docker

##################### 修改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"],"graph": "/data/docker"
}

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 << EOF
{
    "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
posted @   哈喽哈喽111111  阅读(1720)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示