如何在CentOS 8上安装Docker

it2026-06-20  9

介绍

与之前的版本相比,新的CentOS 8版本引入了许多创新元素,一个重大变化是决定不再为Docker提供官方支持。 相反,RHE选择引入用于容器映像创建和管理的内置工具:buildah和podman。 这些工具与Docker兼容,但不需要服务器/客户端架构即可运行。万一您还没有准备好使用这些新工具,本教程将说明如何在CentOS 8上安装Docker。

 

先决条件

CentOS 8的有效安装具有sudo特权的用户帐户终端访问DNF软件包安装程序(默认包含在CentOS 8中)防火墙管理器已禁用

重要提示:不建议禁用关键安全功能。 但是CentOS 8中的防火墙管理器阻止了Docker容器内的DNS解析。 本教程包含有关如何禁用firewalld的说明。

 

使用DNF添加Docker Repository

CentOS 8使用YUM软件包管理器版本v4.0.4。 现在该版本使用DNF(已删除YUM)。

DNF是软件包管理器。 它会在Linux发行版上安装,执行更新并删除软件包。

注意:CentOS 8具有大大改进的软件管理系统。 DNF技术可提高性能,具有定义明确的API,并支持模块化内容,适用于云的AppStreams软件,容器工作负载和CI / CD。

使用DNF添加并启用官方Docker CE存储库。 在终端窗口中键入以下命令:

sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

系统通知您已经成功检索了存储库

sudo dnf repolist -v

以下截图提供所有相关详细信息 

要列出所有可用的docker-ce软件包,请输入:

dnf list docker-ce --showduplicates | sort -r

不幸的是,CentOS 8不支持container.id软件包的特定版本。 这意味着仅某些版本的docker-ce可用于安装。 

 

 

在CentOS 8上安装Docker CE 

一个有效的解决方案是使您的CentOS 8系统使用--nobest命令安装最符合条件的版本:

sudo dnf install docker-ce --nobest

 

如果仔细观察,您会看到安装跳过了不符合条件的最新版本的docker-ce。 

 

启动并测试Docker

启用Docker

通过以下方式启用并启动Docker服务:

sudo systemctl enable --now docker

输出确认我们已经创建了symlink。

接下来,使用以下简短命令确认Docker是否处于活动状态并正在运行:

systemctl status docker

将用户添加到Docker用户组 

使用以下命令将用户添加到docker组:

sudo usermod -aG docker $USER id $USER

 

在CentOS 8上禁用Firewalld

如前所述,我们需要禁用dockerd才能在Docker容器中进行DNS解析。

一个简单的命令足以在CentOS 8中禁用防火墙:

sudo systemctl disable firewalld

输出确认该服务已被禁用。

此时,建议重新引导系统以使更改生效。

 

通过拉取测试容器映像来测试Docker安装 

运行命令

docker run hello-world

至此您已在CentOS 8上成功安装并配置了Docker。 

 

结论

通过遵循本教程,您现在应该在CentOS 8上可以正常工作的Docker安装。

CentOS 8的发行包括许多新功能,这些新功能提高了基于RHEL的操作系统的标准,并改善了整体用户体验。

最新回复(0)