|
#!/bin/bash |
|
function install_docker () { |
|
echo "" |
|
echo "" |
|
echo "#########################################################" |
|
echo "# 卸载旧版本 -- 开始 #" |
|
echo "#########################################################" |
|
yum remove docker \ |
|
docker-client \ |
|
docker-client-latest \ |
|
docker-common \ |
|
docker-latest \ |
|
docker-latest-logrotate \ |
|
docker-logrotate \ |
|
docker-engine |
|
echo "#########################################################" |
|
echo "# 卸载旧版本 -- 结束 #" |
|
echo "#########################################################" |
|
|
|
|
|
# 安装需要的依赖软件包 |
|
echo "" |
|
echo "" |
|
echo "#########################################################" |
|
echo "# 安装需要的软件包 -- 开始 #" |
|
echo "#########################################################" |
|
yum install -y yum-utils |
|
echo "#########################################################" |
|
echo "# 安装需要的软件包 -- 结束 #" |
|
echo "#########################################################" |
|
|
|
echo "" |
|
echo "" |
|
echo "#########################################################" |
|
echo "# 设置 yum 源 -- 开始 #" |
|
echo "#########################################################" |
|
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo |
|
echo "#########################################################" |
|
echo "# 设置 yum 源 -- 结束 #" |
|
echo "#########################################################" |
|
|
|
# 安装 docker-ce |
|
echo "" |
|
echo "" |
|
echo "#########################################################" |
|
echo "# 安装 docker-ce -- 开始 #" |
|
echo "#########################################################" |
|
yum install -y docker-ce docker-ce-cli containerd.io |
|
# 指定安装版本 |
|
# yum list docker-ce --showduplicates | sort -r |
|
# yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io |
|
echo "#########################################################" |
|
echo "# 安装 docker-ce -- 结束 #" |
|
echo "#########################################################" |
|
|
|
# 启动并加入开机启动 |
|
echo "" |
|
echo "" |
|
echo "#########################################################" |
|
echo "# 启动并加入开机启动 -- 开始 #" |
|
echo "#########################################################" |
|
systemctl start docker |
|
systemctl enable docker |
|
echo "#########################################################" |
|
echo "# 启动并加入开机启动 -- 结束 #" |
|
echo "#########################################################" |
|
|
|
|
|
# 验证安装是否成功 |
|
echo "" |
|
echo "" |
|
echo "#########################################################" |
|
echo "# 验证安装是否成功 -- 开始 #" |
|
echo "#########################################################" |
|
docker version |
|
echo "#########################################################" |
|
echo "# 验证安装是否成功 -- 结束 #" |
|
echo "#########################################################" |
|
|
|
# 安装docker-compose |
|
echo "" |
|
echo "" |
|
echo "#########################################################" |
|
echo "# 安装docker-compose -- 开始 #" |
|
echo "#########################################################" |
|
yum install -y epel-release && yum install -y python3-pip python3-devel libffi-dev openssl-dev gcc libc-dev rust cargo make && pip3 install --upgrade pip && pip3 install docker-compose |
|
echo "#########################################################" |
|
echo "# 安装docker-compose -- 结束 #" |
|
echo "#########################################################" |
|
|
|
# 验证安装是否成功 |
|
echo "" |
|
echo "" |
|
echo "#########################################################" |
|
echo "# 验证安装是否成功 -- 开始 #" |
|
echo "#########################################################" |
|
docker-compose --version |
|
echo "#########################################################" |
|
echo "# 验证安装是否成功 -- 结束 #" |
|
echo "#########################################################" |
|
} |
|
|
|
function uninstall_docker () { |
|
echo "" |
|
echo "" |
|
echo "#########################################################" |
|
echo "# 卸载docker-ce -- 开始 #" |
|
echo "#########################################################" |
|
yum remove -y docker-ce docker-ce-cli containerd.io && rm -rf /var/lib/containerd |
|
echo "#########################################################" |
|
echo "# 卸载docker-ce -- 结束 #" |
|
echo "#########################################################" |
|
|
|
echo "" |
|
echo "" |
|
echo "#########################################################" |
|
echo "# 卸载docker-compose -- 开始 #" |
|
echo "#########################################################" |
|
pip3 uninstall docker-compose |
|
echo "#########################################################" |
|
echo "# 卸载docker-compose -- 结束 #" |
|
echo "#########################################################" |
|
} |
|
|
|
|
|
echo -e '\033[35m>>>\033[0m 该脚本为docker-ce & docker-compose安装/卸载脚本(需要root执行, 仅在centos 7.9 arm 测试过)' |
|
echo -e "\033[35m>>>\033[0m 选择要执行的操作:\033[34m1(安装);2(卸载)\033[0m" |
|
read -p "Please Choose:" do_what |
|
|
|
if [ $do_what -eq 1 ]; then |
|
install_docker |
|
elif [ $do_what -eq 2 ]; then |
|
uninstall_docker |
|
else |
|
echo -e '\033[35m>>>\033[0m \033[31mUnknown Operation\033[0m' |
|
fi |