在 openEuler 22.03 LTS 离线环境中安装 Docker,核心是提前准备好 Docker 及其依赖的 RPM 包,再通过本地安装完成部署。以下是详细步骤:
一、提前准备离线安装包(需联网机器)
在一台能联网的 同架构(如 x86_64 或 aarch64)的 openEuler 22.03 LTS 机器上,下载 Docker 及所有依赖的 RPM 包。
- 配置 Docker 源(联网机器)
openEuler 可使用华为云的 Docker 镜像源(兼容 CentOS 架构),先添加源:
# 创建 Docker 源配置文件
sudo vim /etc/yum.repos.d/docker-ce.repo
添加以下内容(适配 openEuler 22.03,基于 CentOS 8 兼容):
[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg
- 下载 Docker 及依赖包(联网机器)
使用 yumdownloader 工具下载所有包(包括依赖),需先安装 yum-utils:
# 安装下载工具
sudo yum install -y yum-utils
# 创建存放离线包的目录
mkdir -p ~/docker-offline && cd ~/docker-offline
# 下载 Docker 相关包(--resolve 自动下载依赖)
sudo yumdownloader --resolve --destdir=. docker-ce docker-ce-cli containerd.io docker-compose-plugin
下载的包包括:docker-ce-xxx.rpm、docker-ce-cli-xxx.rpm、containerd.io-xxx.rpm 及依赖(如 libseccomp、policycoreutils 等)。
3. 传输离线包到目标机器
将 ~/docker-offline 目录下的所有 RPM 包,通过 U 盘、内网传输等方式,复制到离线的 openEuler 22.03 机器(如 /root/docker-offline 目录)。
二、离线安装 Docker(目标机器)
- 卸载旧版本(若有)
避免冲突,先卸载可能存在的旧版 Docker 组件:
sudo yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
- 安装离线 RPM 包
进入存放离线包的目录,批量安装所有 RPM 包(依赖会自动处理):
cd /root/docker-offline
sudo rpm -ivh *.rpm
若提示依赖缺失(极少情况,因已通过 --resolve 下载),需根据报错信息,在联网机器补充下载对应依赖包后重新安装。
三、启动并验证 Docker
1 启动 Docker 服务
# 启动 Docker
sudo systemctl start docker
# 设置开机自启
sudo systemctl enable docker
- 验证安装
# 查看 Docker 版本
docker --version
# 输出示例:Docker version 24.0.7, build afdd53b
# 运行 hello-world 容器(需提前下载镜像到离线环境,或用离线镜像包)
# 若没有离线镜像,可跳过此步,仅验证服务是否正常
docker run hello-world
若 docker --version 正常输出,说明安装成功;若需运行容器,需额外准备 Docker 镜像的离线包(通过 docker save 导出,docker load 导入)。
四、补充:离线导入 Docker 镜像(可选)
若需运行容器,需提前在联网机器导出镜像,再导入离线机器:
联网机器导出镜像:
# 拉取镜像
docker pull hello-world
# 导出为 tar 包
docker save -o hello-world.tar hello-world
传输到离线机器后导入:
docker load -i hello-world.tar
通过以上步骤,即可在 openEuler 22.03 LTS 离线环境中完成 Docker 安装。核心是确保依赖包完整,若安装时提示缺少依赖,需根据错误信息补充对应 RPM 包。
4559

被折叠的 条评论
为什么被折叠?



