CentOS7彻底卸载Docker及其容器

xieshuoshuo 发布于 2024-05-18 372 次阅读 预计阅读时间: 5 分钟


资料引用及查看

之前买了一个国外的VPS,内存及容量都比较小,但胜在价格便宜,一年下来也不到100元人民币,所以有不少Docker项目都跑在了这个VPS上面,包括数据库什么的,但是每新加一个Docker项目,都需要清理一下空间,然后把不用的或者很少用的Docker项目给清理掉,否则就没有空间,这让我很是烦恼。

所以我又购买了一个国内的云服务器与一个稍大一点的国外VPS,所以之前的那一个VPS就可以好好清理一下了,仅作为数据库来用,那么一直告红的容量,就需要好好清理一下了。

CentOS7清理空间的方法我就不提了,稍后我可以再水一篇(不是)写一篇博客来说,因为我按照网上的步骤来,只清理了1G多一点的空间,虽然也清理了,但也不是很多,至少清理了1G空间。

所以最主要的空间清理还是在Docker上面,那么第一步,就是把之前的Docker项目给清理掉,我之前安装过Fast os Docke,所以直接可视化把之前的Docker项目给清理掉了,如果没有安装Docker可视化的,可以参考第一篇引用的文章:如何优雅地删除Docker镜像和容器(超详细)

把其他的Docker项目清理后,接下来就是Fast os Docke的清理了,我整理了一下引用文章的内容,按照我整理的流程来。

1、查看Docker要删除的镜像的容器

docker ps -a # 查看所有容器
docker ps    # 查看运行中的容器

2、停止要删除的镜像的容器

docker stop ID值 # docker stop 0c5f6e528871

3、删除容器

docker rm ID值 # docker rm 0c5f6e528871

4、删除镜像

docker rmi ID值 # docker rmi 0c5f6e528871

我这里只是简写了一下,具体的还是去看引用的文章。

至此,Docker下的所有容器及镜像都已经删除了,接下来就是卸载Docker,可以参照这个文章CentOs7 彻底卸载清除docker,因为我已经删除Docker所有的镜像及容器了,我就从第四步开始了。

1、停止 docker 服务

systemctl stop docker

2、删除存储目录

 rm -rf /etc/docker
 rm -rf /run/docker
 rm -rf /var/lib/dockershim
 rm -rf /var/lib/docker

3、查看已安装的 docker 包(安装的可能略有不同,看返回的内容)

 yum list installed | grep docker
[root@racknerd-d59ed7 ~]# yum list installed | grep docker
containerd.io.x86_64            1.6.28-3.2.el7                 @docker-ce-stable
docker-buildx-plugin.x86_64     0.13.1-1.el7                   @docker-ce-stable
docker-ce.x86_64                3:26.0.0-1.el7                 @docker-ce-stable
docker-ce-cli.x86_64            1:26.0.0-1.el7                 @docker-ce-stable
docker-ce-rootless-extras.x86_64
                                26.0.0-1.el7                   @docker-ce-stable
docker-compose-plugin.x86_64    2.25.0-1.el7                   @docker-ce-stable

4、卸载相关包(我的Docker安装与文章里的不同,所以卸载命令需要调整)

# 原文
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
# 我的
sudo yum remove docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-ce-rootless-extras docker-buildx-plugin

运行上面命令的时候,会出现一个是否确认删除的,输入y即可

[root@racknerd-d59ed7 ~]# sudo yum remove docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-ce-rootless-extras docker-buildx-plugin
Loaded plugins: fastestmirror
Resolving Dependencies
......
Installed size: 395 M
Is this ok [y/N]: y
Downloading packages:
......               

Complete!

由于我安装有Docker Compose(作为独立的软件包而不是 Docker 插件),所以还需要执行下面的命令

sudo yum remove docker-compose

5、清理不再需要的依赖和缓存

sudo yum autoremove  
sudo yum clean all

至此,CentOS7上的Docker就被卸载了,我们可以使用docker version或者是docker -v验证一下

[root@racknerd-d59ed7 ~]#  docker version
-bash: /usr/bin/docker: No such file or directory
[root@racknerd-d59ed7 ~]# docker -v
-bash: /usr/bin/docker: No such file or directory

上面的就代表Docker已经被卸载了,稳妥起见,还可以把服务器重启一下后再验证一下。

通过清理日志与卸载Docker,容量占比终于是回到了60%,这样,也算是圆满结束了