CentOS Linux 7 一键安装和卸载docker & docker-compose

install_docker.sh

bash 复制代码
#!/bin/bash
# 安装 Docker

echo "下载关于Docker的依赖环境"
echo "安装yum-utils包"
sudo yum -y install yum-utils device-mapper-persistent-data lvm2
echo "设置存储库"
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum makecache fast
echo "安装Docker引擎"
sudo yum install docker-ce-23.0.3 docker-ce-cli-23.0.3 containerd.io


# 安装 Docker Compose
sudo mkdir -p /usr/local/bin
sudo chmod 777 /usr/local/bin
sudo rm /usr/local/bin/docker-compose

sudo curl -k -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose


sudo chmod +x /usr/local/bin/docker-compose

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose


# 将用户添加到 docker 用户组中,以免每次执行 Docker 命令都需要 sudo
sudo usermod -aG docker $USER
newgrp docker



# 配置 Docker 镜像加速器
echo "配置 Docker 镜像加速器..."
sudo mkdir -p /etc/docker
echo '{
  "registry-mirrors": ["https://mr63yffu.mirror.aliyuncs.com"]
}' | sudo tee /etc/docker/daemon.json
sudo systemctl start docker

# 显示安装结果
echo "Docker 版本:"
docker --version
echo "Docker Compose 版本:"
docker-compose --version
echo "安装完成!"

看到提示确认,直接回车y

uninstall_docker.sh

bash 复制代码
#!/bin/bash

chmod +x uninstall_docker.sh

# 停止并删除所有正在运行的 Docker 容器
docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)

# 卸载 Docker 引擎、CLI 和容器运行时
sudo yum remove docker-ce docker-ce-cli containerd.io

# 删除 Docker 创建的所有镜像、容器和卷
sudo rm -rf /var/lib/docker

# 删除 Docker 用户组
sudo groupdel docker

# 删除所有 Docker 相关文件
sudo rm -rf /etc/docker

sudo pip uninstall docker-compose
sudo rm /usr/local/bin/docker-compose
sudo rm /usr/bin/docker-compose


echo "Docker 已成功卸载并清除相关文件。"
相关推荐
小Pawn爷8 小时前
3.Dockerfile
docker
CodeGolang8 小时前
Docker容器化部署Zabbix监控系统完整指南
docker·容器·zabbix
石去皿8 小时前
【嵌入式就业10】Linux内核深度解析:从启动流程到驱动框架的工业级实践
linux·运维·服务器
954L8 小时前
CentOs7执行yum update出现链接404问题
linux·centos·yum·vault
Trouvaille ~8 小时前
【Linux】应用层协议设计实战(二):Jsoncpp序列化与完整实现
linux·运维·服务器·网络·c++·json·应用层
EmbedLinX8 小时前
嵌入式之协议解析
linux·网络·c++·笔记·学习
vortex58 小时前
解密UUOC:Shell编程中“无用的cat使用”详解
linux·shell编程
wangjialelele8 小时前
Linux中的进程管理
java·linux·服务器·c语言·c++·个人开发
杜子不疼.9 小时前
【Linux】库制作与原理(二):动态库的制作与使用
linux·运维·服务器
森焱森9 小时前
嵌入式硬件工程师应知 白银快速分析报告
linux·c语言·arm开发·嵌入式硬件·去中心化