CentOS Stream 卸载 Podman 并安装 Docker 的方法

目录

[卸载 Podman](#卸载 Podman)

[安装 Docker](#安装 Docker)


Podman 是一个无守护进程的容器引擎,旨在提供与 Docker 类似的命令行接口,但不需要守护进程运行。Podman 是 Red Hat 的开源项目,具有安全性、兼容性和灵活性等优点。

CentOS Stream 默认安装了 Podman 来代替 Docker,导致在 CentOS Stream 中安装 Docker 会和 Podman 冲突,所以要想安装 Docker 的话,需要先卸载掉 Podman。虽然 Podman 提供了很多改进功能,特别是在安全性和无守护进程架构方面,但 Docker 的成熟生态系统、广泛的社区支持和企业级服务使得它仍然在许多场景中被广泛使用。

接下来简单介绍下 Centos Stream 中的包管理工具 DNF,DNF(Dandified YUM)是 YUM 包管理器的下一代版本,提供了一些性能和功能上的改进。DNF 最初在 Fedora 中引入,并逐渐被其他基于 RPM 的发行版采用。CentOS 8是第一个默认使用 DNF 作为包管理器的 CentOS 版本,在 Centos Stream 中,默的包管理工具也是 DNF,所以接下来的讲解中都是用 DFN 工具来操作。

卸载 Podman

可以使用如下命令卸载 Podman

复制代码
# dnf remove -y podman buildah

卸载完成后无需重启系统,即可直接安装 Docker。

安装 Docker

首先添加 Docker 仓库(repo),这里使用阿里云的镜像源(官方镜像源地址是 https://download.docker.com/linux/centos/docker-ce.repo)

复制代码
# dnf config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装 Docker

复制代码
# dnf install docker-ce

注:如果想安装指定版本 Docker 的化,可以使用 dnf list docker-ce --showduplicates | sort -r 命令来查看仓库里的所有版本的 Docker,然后安装指定版本即可。

安装完成后,启动 Docker 服务并设置为开机自启

复制代码
# systemctl start docker
# systemctl enable docker

接下来通过运行一个 Zipkin 容器来验证 Docker 是否安装成功,首先拉取 zipkin 镜像

复制代码
# docker pull openzipkin/zipkin

运行 Zipkin 容器,将 Zipkin 的容器端口 9411 映射到宿主机的相同端口,并给容器命名为 zipkin,同时设置了容器重启策略为 always,如果容器意外停止,Docker 会自动重启 Zipkin。

复制代码
# docker run --name zipkin \
-p 9411:9411 \
--restart=always \
-d openzipkin/zipkin

容器启动后,可以在浏览器中通过访问 http://localhost:9411/zipkin 来检查 Zipkin 是否正在运行,可以看到 Zipkin 的用户界面。

相关推荐
人鱼传说14 分钟前
docker desktop是一个好东西
运维·docker·容器
小章UPUP1 小时前
Kubernetes (K8s) 与 Podman 的比较
容器·kubernetes·podman
忆~遂愿1 小时前
CANN metadef 核心解析:计算图原型定义、算子元数据抽象与异构系统互操作机制
docker·容器
说实话起个名字真难啊2 小时前
用docker来安装openclaw
docker·ai·容器
恬静的小魔龙3 小时前
【群晖Nas】群晖Nas中实现SVN Server功能、Docker/ContainerManager等
docker·svn·容器
Zfox_3 小时前
CANN Catlass 算子模板库深度解析:高性能 GEMM 融合计算、Cube Unit Tiling 机制与编程范式实践
docker·云原生·容器·eureka
威迪斯特4 小时前
CentOS图形化操作界面:理论解析与实践指南
linux·运维·centos·组件·图形化·桌面·xserver
春日见4 小时前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
DARLING Zero two♡4 小时前
告别 Docker 命令行!Portainer+cpolar 让容器管理从局域网走向公网
运维·docker·容器
liu****5 小时前
2.深入浅出理解虚拟化与容器化(含Docker实操全解析)
运维·c++·docker·容器·虚拟化技术