【Docker】Linux系统上卸载旧Docker、卸载Podman并重新安装Docker及配置国内镜像源

一、卸载 Podman

可以使用如下命令卸载 Podman

复制代码
dnf remove -y podman buildah

二、卸载旧版本 Docker

若系统中已存在旧版 Docker,请按以下步骤彻底卸载:

1.停止Docker服务
复制代码
sudo systemctl stop docker
2. 卸载 Docker 相关软件包
复制代码
sudo yum remove -y docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine \
                  containerd.io \
                  docker-ce \
                  docker-ce-cli

3. 删除残留文件和目录

复制代码
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
sudo rm -rf /etc/docker
4. 查询残留文件和目录(有残留的话按照上一条删除方法,写入残留目录依次删除即可)
复制代码
sudo yum list installed | grep docker

三、安装最新版 Docker

1. 安装依赖工具(如使用的是dnf命令,可以不用安装此依赖工具)
复制代码
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2. 添加 Docker 官方仓库( 添加 Docker 仓库(repo),这里使用阿里云的镜像源地址,官方镜像源地址是(https://download.docker.com/linux/centos/docker-ce.repo
复制代码
# 使用dnf命令
dnf config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 或者使用上一步提供安装了"依赖工具(yum-utils)"的yum-config-manager命令
# sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

3.配置国内镜像加速器(避免下载失败,执行完这步再去安装引擎)(可选做)

为提升镜像下载 速度,配置国内镜像源(以阿里云为例):

3.1. 编辑 /etc/yum.repos.d/docker-ce.repo,将 URL 替换为国内镜像,或者直接执行下面命令即可替换

复制代码
sudo sed -i 's|download.docker.com|mirrors.aliyun.com/docker-ce|g' /etc/yum.repos.d/docker-ce.repo

3.2. 查看是否替换成功

复制代码
grep "mirrors.aliyun.com" /etc/yum.repos.d/docker-ce.repo
4. 安装 Docker 引擎

注:如果想安装指定版本 Docker 的化,可以使用 dnf list docker-ce --showduplicates | sort -r 命令来查看仓库里的所有版本的 Docker,然后安装指定版本即可。理论上建议先配置镜像加速器再安装。

复制代码
# 使用dnf命令
dnf install docker-ce

# 或者使用 yum 命令
# sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
5. 启动 Docker 并设置开机自启
复制代码
sudo systemctl start docker
sudo systemctl enable docker

四、测试验证

1. 检查是否安装成功

复制代码
docker -v
2. 测试拉取镜像
复制代码
docker pull nginx

3. 配置镜像加速器和 DNS(解决拉取失败问题)

3.1:编辑 Docker 配置文件(使用nano命令:保存【ctrl + o】,退出【ctrl+x】)

复制代码
# 或者使用vi、vim命令都可以
sudo nano /etc/docker/daemon.json

添加以下内容(建议直接复制粘贴,手敲易出错):

{

"dns": ["8.8.8.8", "8.8.4.4"],

"registry-mirrors": [

"https://docker.m.daocloud.io/",

"https://huecker.io/",

"https://dockerhub.timeweb.cloud",

"https://noohub.ru/",

"https://dockerproxy.com",

"https://docker.mirrors.ustc.edu.cn",

"https://docker.nju.edu.cn",

"https://xx4bwyg2.mirror.aliyuncs.com",

"http://f1361db2.m.daocloud.io",

"https://registry.docker-cn.com",

"http://hub-mirror.c.163.com"

],

"runtimes": {

"nvidia": {

"path": "nvidia-container-runtime",

"runtimeArgs": []

}

}

}

3.2:重新加载配置并重启 Docker

保存并退出后,执行以下命令应用配置:

复制代码
sudo systemctl daemon-reload
sudo systemctl restart docker

3.3**. 再次测试拉取镜像**

验证配置是否生效,重新尝试拉取镜像,拉取结束查看拉取的镜像是否在本地:

复制代码
# 拉取镜像
docker pull nginx

# 查看拉取到的所有镜像
docker images

其他相关docker命令

复制代码
# 更新Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

# 重启docker服务
sudo systemctl restart docker

# 拉取Docker镜像,如果你想要拉取特定版本的镜像(比如ubuntu 18.04),你可以指定标签:docker pull ubuntu:18.04
docker pull ubuntu

# 运行容器
docker run -it ubuntu /bin/bash

# 查看正在运行的容器
docker ps

# 查看所有容器(包括未运行的)
docker ps -a

# 启动一个容器
docker start 容器名或容器ID

# 停止一个容器
docker stop 容器ID或名称

# 重启一个容器
docker restart 容器名或容器ID

# 删除一个容器
docker rm 容器ID或名称

# 查看所有镜像
docker images

# 删除一个镜像
docker rmi 镜像ID或名称[:TAG]

# 检查 Docker 的日志以获取更多详细信息或者查看 Docker 的系统日志(journalctl -u docker.service)
docker logs minio
相关连接
相关推荐
小樱花的樱花3 小时前
C++ new和delete用法详解
linux·开发语言·c++
APIshop4 小时前
Java获取京东商品详情接口(item_get)实战指南
java·linux·数据库
Cx330❀4 小时前
一文吃透Linux System V共享内存:原理+实操+避坑指南
大数据·linux·运维·服务器·人工智能
薛定谔的悦4 小时前
储能系统(EMS)核心架构解析:充放电控制、防逆流、防过载与 PID 调节
linux·运维·架构
3GPP仿真实验室5 小时前
【MATLAB源码】CSI-RS:测量链路
linux·网络·matlab
阿 才5 小时前
WSL2 + TFTP + 网络启动(Linux开发板与WSL2建立网络连接)
linux·运维·网络
Benszen5 小时前
Docker容器化技术全解析
运维·docker·容器
IMPYLH6 小时前
Linux 的 false 命令
linux·运维·服务器·bash
小江的记录本6 小时前
【Linux】《Linux常用命令汇总表》
linux·运维·服务器·前端·windows·后端·macos
一匹电信狗6 小时前
【Linux我做主】进程程序替换和exec函数族
linux·运维·服务器·c++·ubuntu·小程序·开源