centos上部署docker-ce,及问题解决
1、过程介绍
通过官方脚本一键安装,并解决脚本问题;需要服务器联通外网;docker不支持linux6版本;
脚本过程:卸载原本的docker,删除旧数据,安装依赖,添加docker源,禁用体验版和测试版,安装docker,配置镜像加速器,设置开机自启动;
2、脚本内容及解释
dockerInstall.sh
#!/bin/bash
# 移除掉旧的版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
# 删除所有旧的数据目录
sudo rm -rf /var/lib/docker
# 安装docker所需依赖包
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
# 添加阿里云镜像源
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 打开体验版与测试版(按需配置)
# sudo yum-config-manager --enable docker-ce-edge
# sudo yum-config-manager --enable docker-ce-test
# 关闭体验版与测试版(按需配置,我这里禁用了测试和体验版)
sudo yum-config-manager --disable docker-ce-edge
sudo yum-config-manager --disable docker-ce-test
# 配置缓存
sudo yum makecache fast
# 安装最新稳定版本的docker
sudo yum install -y docker-ce
# 配置镜像加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
EOF
# 启动docker引擎并设置开机启动
sudo systemctl start docker
sudo systemctl enable docker
# 配置当前用户对docker的执行权限
sudo groupadd docker
sudo useradd -g docker docker
sudo systemctl restart docker
3、开始安装及问题解决
sh dockerInstall.sh
如果脚本运行过程中未遇到问题,则安装成功后检查一下docker是否启动即可
systemctl status docker;
如遇以下问题:
解决:
# mv centos.repo centos.repo.bak #将yum的源暂时停止使用
# vi /etc/yum.repo.d/docker--ce.repo
在此文件顶部添加以下内容:
[centos-extras]
name=Centos extras - $basearch
baseurl=http://mirror.centos.org/centos/7/extras/x86_64
enabled=1
gpgcheck=0
安装报错中的所需依赖:
yum -y install slirp4netns fuse-overlayfs container-selinux
安装成功后,不要执行dockerInstall.sh脚本!!!!
直接执行 yum install -y docker-ce 安装docker即可!!!
安装成功后,启动和设置开机自启动
sudo systemctl start docker
sudo systemctl enable docker