ubuntu下卸载docker方式与具体步骤

 更新时间:2026年06月05日 09:02:13   作者:IT老杨说运维  
这篇文章主要介绍了ubuntu下卸载docker方式与具体步骤,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

在 Ubuntu 系统下卸载 Docker 包括卸载 Docker 引擎、相关配置文件以及清理残留数据。

以下是详细步骤:

卸载前的准备工作

在开始卸载前,有两件关键的事情需要做:

  1. 备份数据:卸载过程会删除所有容器、镜像、卷等数据,请务必确认已备份所需数据。详细数据备份方法请参照其它文档。
  2. 停止服务:首先停止Docker相关的服务。
sudo systemctl stop docker

上图中的警告是因为除了 docker.service服务单元,系统中还存在一个 docker.socket 单元。

这个设计是为了按需启动Docker:即使 docker.service 被停止,当你执行任何Docker命令时,系统检测到对 docker.socket 的访问,也会自动启动Docker服务。

使用以下命令停用docker.socket,如果你登录的用户为root,可以不加sudo,如下图。

sudo systemctl stop docker.socket
sudo systemctl disable docker.socket

卸载 Docker 引擎(CE/EE)------这是官方推荐的方式

卸载 Docker 引擎、CLI 和运行的容器

sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

上图在执行命令时报错,其实是我的系统中没有安装docker-buildx-plugin 和 docker-compose-plugin,那么只需在命令行中删除这两个包即可卸载成功,如下图。

在上图卸载docker及其组件成功后,日志中有一条警告信息:

dpkg: warning: while removing pnetlab-docker, directory ‘/etc/docker’ not empty so not removed。

提示目录 /etc/docker 目录中有文件,无法删除,我们根据需要可进入目录手动删除。

如下图:

 清理残留文件

删除 Docker 相关配置和数据目录

sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
sudo rm -rf ~/.docker  # 用户级的 Docker 配置(如认证信息)

删除 Docker 组(如果有创建过)

sudo groupdel docker

移除依赖和无用包

自动移除不再需要的依赖

sudo apt-get autoremove -y

清理 apt 缓存

sudo apt-get clean

验证卸载

检查 Docker 是否已卸载

docker --version

检查残留进程(可选)

ps aux | grep docker

下图提示docker已经卸载完成。

从 sources.list 移除 Docker 仓库

如果之前添加了 Docker 的 APT 仓库,可以移除它:

sudo rm /etc/apt/sources.list.d/docker.list
sudo apt-get update

下图提示我的系统中之前没有添加Docker 的 APT 仓库,所以移除失败。

注意事项

  • 数据备份:卸载前确保备份重要容器、镜像或卷(/var/lib/docker 下的数据)。
  • 权限问题:如果非root用户使用 sudo 操作仍报错,检查当前用户是否在 docker 组中(卸载后建议移除该组)。
  • 其他工具:如果安装非插件版本的 docker-compose,可使用以下命令单独卸载。
sudo apt-get remove docker-compose   

下图显示没有安装非插件版的docker-compose

完成上述步骤后,Docker 应已彻底从系统中移除。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Docker中容器数据卷详解

    Docker中容器数据卷详解

    这篇文章主要介绍了Docker中容器数据卷详解的相关资料,需要的朋友可以参考下
    2022-11-11
  • dockerhub 镜像拉取超时的解决方法

    dockerhub 镜像拉取超时的解决方法

    DockerHub遇到镜像拉取超时问题,现在可以通过修改仓库地址为daocloud提供的镜像地址解决,为用户提供便捷的镜像拉取服务,感兴趣的可以了解一下
    2024-10-10
  • Docker动态给容器Container暴露端口操作

    Docker动态给容器Container暴露端口操作

    这篇文章主要介绍了Docker动态给容器Container暴露端口操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • 如何使用 Docker 部署 Spark 集群

    如何使用 Docker 部署 Spark 集群

    本文介绍了如何通过DockerCompose部署一个Spark集群,包括一个Master节点和多个Worker节点,环境要求包括DockerEngine、DockerCompose和网络环境,通过配置docker-compose.yml文件,可以定义和运行多容器应用,感兴趣的朋友一起看看吧
    2025-02-02
  • dockerfile中su命令切换用户激活环境,报错su: invalid option -- ‘n‘

    dockerfile中su命令切换用户激活环境,报错su: invalid option 

    本文主要介绍了dockerfile中su命令切换用户激活环境以及报错su: invalid option -- ‘n‘的问题解决,具有一定的参考价值,感兴趣的可以了解一下
    2025-01-01
  • docker容器状态出现Exit(1)的问题及解决

    docker容器状态出现Exit(1)的问题及解决

    这篇文章主要介绍了docker容器状态出现Exit(1)的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • docker用于将镜像打包为tar文件核心用法和注意事项

    docker用于将镜像打包为tar文件核心用法和注意事项

    在Docker中将镜像打包为.tar包是一个常见的需求,尤其是在需要将镜像迁移到其他服务器或进行备份时,这篇文章主要介绍了docker用于将镜像打包为tar文件核心用法和注意事项,需要的朋友可以参考下
    2025-12-12
  • docker设置redis密码实现方式

    docker设置redis密码实现方式

    这篇文章主要介绍了docker设置redis密码实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2026-06-06
  • 绑定Dokcer容器到主机指定网卡的方法

    绑定Dokcer容器到主机指定网卡的方法

    这篇文章主要介绍了绑定 Dokcer 容器到主机指定网卡的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • 从零搭建到生产环境配置详解Docker部署MongoDB的完整流程

    从零搭建到生产环境配置详解Docker部署MongoDB的完整流程

    在容器化技术日益普及的今天,使用 Docker 部署 MongoDB 已经成为开发和生产环境的标配方案,本文详细介绍了使用Docker部署MongoDB的全过程,希望可以带大家全面掌握 Docker 部署 MongoDB 的核心技能
    2026-05-05

最新评论