ubuntu如何完全干净的卸载docker

 更新时间:2023年05月25日 15:05:23   作者:Sunday_ding  
这篇文章主要介绍了ubuntu如何完全干净的卸载docker问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

ubuntu完全干净的卸载docker

1. 删除某软件,及其安装时自动安装的所有包

sudo apt-get autoremove docker docker-ce docker-engine  docker.io  containerd runc

2. 删除docker其他没有没有卸载

dpkg -l | grep docker

3.卸载没有删除的docker相关插件(结合自己电脑的实际情况)

format,png

sudo apt-get autoremove docker-ce-*

4.删除docker的相关配置&目录

 sudo rm -rf /etc/systemd/system/docker.service.d
 sudo rm -rf /var/lib/docker

5.确定docker卸载完毕

docker --version

ubuntu16.04离线安装与卸载docker和nvidia-docker问题

离线安装docker

项目上的服务器不能上网,因此需要离线配置docker和nvidia-docker

在一台有网的机器上,在链接中下载相应的文件

containerd.io_1.2.0-1_amd64.deb
docker-ce-cli_18.09.1~3-0~ubuntu-xenial_amd64.deb
docker-ce_18.09.1~3-0~ubuntu-xenial_amd64.deb

用下面的命令将三个包一起安装了

sudo dpkg -i containerd.io_1.2.0-1_amd64.deb docker-ce-cli_18.09.1~3-0~ubuntu-xenial_amd64.deb  docker-ce_18.09.1~3-0~ubuntu-xenial_amd64.deb 

离线安装nvidia-docker

如果已安装nvidia-docker1.0,需要卸载nvidia-docker 1.0

docker volume ls -q -f driver=nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f
sudo apt-get purge nvidia-docker

在一台有网的机器上配置apt源(注意有网的机器上的Ubuntu版本需要与离线安装的机器一致)

curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
  sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
  sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update

运行以下5个命令,下载5个包到当前目录,将这些包拷贝在离线服务器上 

apt download libnvidia-container1
apt download libnvidia-container-tools
apt download nvidia-container-toolkit
apt download nvidia-container-runtime
apt download nvidia-docker2

离线服务器上依次运行以下命令,顺序不能颠倒:

dpkg -i libnvidia-container1
dpkg -i libnvidia-container-tools
dpkg -i nvidia-container-toolkit
dpkg -i nvidia-container-runtime
dpkg -i nvidia-docker2

运行:(机器上需要有nvidia驱动)

docker run --runtime=nvidia --rm nvidia/cuda:9.0-base nvidia-smi

卸载docker

方法一

apt-get purge卸载命令需要逐条执行

sudo apt-get purge docker-ce
sudo apt-get purge docker-ce-cli
sudo apt-get purge containerd.io

查看是否卸载完毕

apt list --installed | grep docker
apt list --installed | grep contain.io

删除残留文件

rm -rf /var/lib/docker
rm -rf /var/run/docker
rm -rf /etc/docker
rm -rf /run/docker.sock
rm -rf /var/lib/containerd
rm -rf /run/containerd
rm -rf /opt/containerd

在删除文件时可能会出现rm: cannot remove ‘/var/lib/docker/containers’: Device or resource busy

网络共享挂载的存储目录无法使用rm -rf清空,如果Linux确实需要删除本地挂载点,可以先卸载,然后删除本地的挂载点。

  • 卸载:umount /var/lib/docker/containers
  • 删除:rm -rf /var/lib/docker/

方法二

首先查看docker服务状态,并停止docker服务

systemctl stastus docker         # 查看docker服务状态
systemctl stop docker            # 关闭docker服务
systemctl disable docker        # 关闭开机自启

查看源码安装方式的自启动服务文件:

ls /etc/systemd/system/docker.service

删除docker文件

cd /usr/bin/
ls -lrt docker*
rm -rf docker*

按照方法一上面的方式删除docker残余文件 

总结

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

相关文章

  • docker 编辑Dockerfile 添加php7.2 acpu的问题

    docker 编辑Dockerfile 添加php7.2 acpu的问题

    这篇文章主要介绍了docker 编辑Dockerfile 添加php7.2 acpu问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • 如何将Docker的构建时间减少40%(推荐)

    如何将Docker的构建时间减少40%(推荐)

    这篇文章主要介绍了如何将Docker的构建时间减少40%,本文描述了我们在优化CI管道后获得的一些新见解,需要的朋友可以参考下
    2023-11-11
  • docker-compose启动redis多机集群的实现(6台服务器3主3从)

    docker-compose启动redis多机集群的实现(6台服务器3主3从)

    本文主要介绍了docker-compose启动redis多机集群的实现(6台服务器3主3从),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • Docker网络如何配置dns

    Docker网络如何配置dns

    这篇文章主要介绍了Docker网络如何配置dns问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Dockerfile中的保留字指令的过程解析

    Dockerfile中的保留字指令的过程解析

    Dockerfile是用来构建Docker镜像的构建文件,由一系列命令和参数构成的脚本,本文重点给大家介绍Dockerfile中的保留字指令的过程解析,感兴趣的朋友跟随小编一起看看吧
    2021-11-11
  • 使用Docker安装Nginx并配置端口转发问题及解决方法

    使用Docker安装Nginx并配置端口转发问题及解决方法

    这篇文章主要介绍了使用Docker安装Nginx并配置端口转发,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01
  • Docker部署与常见使用方法

    Docker部署与常见使用方法

    Docker是一种容器化技术,用于管理应用的打包、部署和运行,它轻量级、一致且可移植,适用于各种部署场景,本文介绍Docker部署与常见使用方法,感兴趣的朋友跟随小编一起看看吧
    2026-03-03
  • CentOS7彻底卸载Docker的完整流程

    CentOS7彻底卸载Docker的完整流程

    Docker 已成为现代云原生架构的核心组件,但在某些情况下,比如需要重新安装 Docker、升级版本或切换到其他容器管理工具时,彻底卸载 Docker 并清理相关数据成为必要步骤,本文将针对 CentOS 7 操作系统,详细梳理并扩展 Docker 卸载的完整流程
    2025-04-04
  • seata docker 高可用部署的详细介绍

    seata docker 高可用部署的详细介绍

    这篇文章主要介绍了seata docker 高可用部署的相关知识,通过相关配置文件实现高可用需要依赖注册中心,配置中心,数据库,需要的朋友可以参考下
    2021-07-07
  • docker容器日志时间不一致问题

    docker容器日志时间不一致问题

    这篇文章主要介绍了docker容器日志时间不一致问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05

最新评论