Bootstrap

openeuler24.09 系统无需配置 docker 源即可安装 docker 和 docker-composer

准备工作

1、准备一台刚刚创建的 openeuler24.09 lxc 虚拟机
在这里插入图片描述

2、使用 dnf 更新到最新,安装常用 工具

dnf update -y
dnf install vim net-tools wget

在这里插入图片描述
在这里插入图片描述
3、设置 ssh
由于ssh 与通常网上教程大同小异,在此我们就略过。
在这里插入图片描述
从下图我们可以看到 openeuler24.09 已经远程连接上。
在这里插入图片描述

安装 Docker

1、从Docker的存储库中安装(https://docs.docker.com/engine/install/centos/#install-using-the-repository)
因为需要用到yum-config-manager工具,所以需要安装yum-utils包。之后使用 yum-config-manager 添加docker-ce的软件仓库

sudo yum install -y yum-utils

发现软件仓库里找不到这个包,那好吧,我们就来添加华为云开源镜像站的镜像,网上很多教程也都是想办法配置 docker 源,其实根本就不需要配置,你也可以安装成功,接着往下看。
2、安装 Docker 引擎相关组件出现故障
执行以下 dnf 命令来安装 Docker:

dnf install docker-ce docker-ce-cli containerd.io

执行结果为:

[root@openeuler24 ~]# dnf install docker-ce docker-ce-cli containerd.io
Last metadata expiration check: 0:05:05 ago on Mon Dec 16 12:50:29 2024.
No match for argument: docker-ce
No match for argument: docker-ce-cli
No match for argument: containerd.io
Error: Unable to find a match: docker-ce docker-ce-cli containerd.io
[root@openeuler24 ~]# 

可以看出:在 OpenEuler 24.09 系统中执行dnf install docker-ce docker-ce-cli containerd.io出现No match for argument错误,是因为默认的软件源中没有包含这些 Docker 相关的软件包。【到这里很多文章都认为需要配置 Docker 软件源,然后更改为国内其它软件源,其实这一步大可不必。
3、清除 dnf 缓存并更新并安装 docker
安装 docker 之前,需要先清除 dnf 原有的缓存信息,再更新 dnf 的元数据缓存。

sudo dnf clean all
sudo dnf makecache

验证源配置 docker 是否可用
如果你查看 openEuler.repo 你会发现openEuler.repo 文件中已经有许多扩展 dnf 源。

[root@openeuler24 yum.repos.d]# dnf clean all
0 files removed
[root@openeuler24 yum.repos.d]# dnf makecache
OS                                                                                                                                                             477 kB/s | 2.9 MB     00:06    
everything                                                                                                                                                     374 kB/s |  16 MB     00:44    
EPOL                                                                                                                                                           385 kB/s | 4.9 MB     00:13    
debuginfo                                                                                                                                                      472 kB/s | 4.5 MB     00:09    
source                                                                                                                                                         595 kB/s | 1.7 MB     00:02    
update                                                                                                                                                         566  B/s | 257  B     00:00    
update-source                                                                                                                                                  514  B/s | 257  B     00:00    
Last metadata expiration check: 0:00:01 ago on Mon Dec 16 13:11:32 2024.
Metadata cache created.
[root@openeuler24 yum.repos.d]#

可以尝试使用 dnf 命令去搜索或安装一个 docker 软件包,看看能否正常从配置的源获取相关信息,例如:
sudo dnf search docker
如果能够正常列出 docker 相关的软件包信息,那就说明配置的 openEuler.repo 软件源已经包含 docker 安装包了,因此 docker 可以正常安装使用了。

[root@openeuler24 yum.repos.d]# sudo dnf search docker
Last metadata expiration check: 0:01:20 ago on Mon Dec 16 13:11:32 2024.
================================================================================ Name Exactly Matched: docker =================================================================================
docker.x86_64 : The open-source application container engine
docker.src : The open-source application container engine
================================================================
;