目录
[卸载 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 的用户界面。