openeuler下宝塔无法创建Docker容器解决方法
·
系统信息
系统:openeuler 24.03 LTS
面板:宝塔面板 v12.0.0 稳定版
故障描述
在 openEuler 系统中,通过宝塔面板的应用商店创建容器一切正常,但使用在线镜像或本地镜像创建容器时,会提示“容器运行失败! device_requests param is not supported in API versions < 1.40”错误。

故障解析
该错误表明当前 Docker 版本过旧,API 版本低于 1.40,不支持 device_requests 参数,因此无法正常创建容器。
使用以下命令查看 Docker 版本:
docker version
重点关注 API 字段:宝塔面板要求 API 版本不低于 1.40,而当前环境为 1.39。

解决方法
卸载旧版本(可选)
建议先卸载旧版本,再安装新版本(此步骤可选,也可以直接覆盖安装)。
dnf remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
配置 Docker CE 仓库(华为云镜像)
Docker 官方仓库在国内访问速度较慢,推荐配置华为云镜像仓库以加速下载。
dnf config-manager --add-repo=https://repo.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo
替换为华为云地址并调整参数
将下载地址替换为华为云,并把 $releasever 变量强制替换为 8(openEuler 24.03 与 CentOS 8 兼容):
sed -i 's+download.docker.com+repo.huaweicloud.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
sed -i 's+$releasever+8+' /etc/yum.repos.d/docker-ce.repo
确认路径已更改
确认仓库路径已变为 centos/8/:
grep baseurl /etc/yum.repos.d/docker-ce.repo

安装Docker
刷新缓存并安装 Docker CE 及配套组件:
dnf clean all && dnf makecache
dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
启动并验证
安装完成后,启动 Docker 服务并验证版本:
systemctl enable --now docker
docker version

此时 API 版本已升级为 1.45,重新创建容器即可正常,不再提示之前的错误。

声明
本文部分内容参考自公开网络资料,部分内容由 AI 辅助生成,仅供学习与交流参考。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐


所有评论(0)