【个人记录】openEuler安装Docker使用GPU

前言

跟K3S配置思路类似
安装整体思路是:

  1. 安装GPU驱动
  2. 安装CUDA工具
  3. 安装nvidia容器运行时
  4. 安装Docker
  5. 配置Docker使用nvidia运行时

基础环境

参数 内容
系统 openEuler 22.03 (LTS-SP3)
CPU 8
内存 64G
系统盘 500G
GPU V100-32G

GPU采用直通的方式,vGPU应该也差不多。

安装GPU驱动

下载驱动

先去官网(https://www.nvidia.cn/geforce/drivers/)下载驱动,详细的见安装K3S使用GPU这篇笔记。
到运行

nvidia-smi

运行后应该会输出显卡和驱动信息,输出则表示安装成功。

+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 560.35.03              Driver Version: 560.35.03      CUDA Version: 12.6     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. 
<think>我们参考提供的引用资料,特别是引用[1]和引用[2]中的步骤,但注意引用[1]是针对鲲鹏916架构的openEuler-arm64,而引用[2]是在Ubuntu上安装的步骤。因此,我们需要结合openEuler系统的特点(基于CentOS/RHEL的衍生版本)来调整安装步骤。 根据openEuler的官方文档和常见的安装方式,我们通常使用yum包管理器来安装Docker。但是,由于openEuler可能没有官方Docker仓库,我们可以考虑使用Docker官方提供的安装脚本或者从openEuler的仓库中安装(如果包含的话)。然而,引用[1]中提到了在鲲鹏920架构的arm64版本centos7安装docker,其步骤是先卸载旧版本,然后添加Docker仓库并安装。 但是,请注意引用[3]中显示的是在openEuler上已经安装并运行了Docker,说明是可行的。我们可以根据引用[1]的步骤进行适配。 步骤概述: 1. 卸载旧版本(如果有) 2. 安装必要的依赖包 3. 添加Docker的官方仓库(注意:需要确认openEuler的版本对应的仓库,或者使用通用脚本) 4. 安装Docker引擎 然而,由于Docker官方并未直接支持openEuler,因此我们可以考虑使用Docker提供的通用安装脚本(get.docker.com)或者使用openEuler自己的软件源(如果包含Docker的话)。 根据openEuler的官方文档,我们可以使用以下步骤: 参考openEuler官方:在openEuler 20.03 LTS SP1及以上版本中,Docker已经包含在默认的软件源中。因此,我们可以直接使用yum安装。 但是,为了确保通用性,我们按照引用[1]的步骤,并参考Docker官方在CentOS上的安装步骤进行。 具体步骤: 1. 卸载旧版本(如果之前安装过): sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine 2. 安装必要的依赖: sudo yum install -y yum-utils device-mapper-persistent-data lvm2 3. 添加Docker的官方仓库(这里我们使用阿里云的镜像,因为官方仓库可能无法直接用于openEuler,但注意阿里云镜像也是为CentOS/RedHat准备的,所以需要确认是否支持openEuler): 由于openEuler与CentOS的兼容性,我们可以尝试使用CentOS的仓库。但是,更推荐使用openEuler自己的仓库(如果包含的话)。 如果openEuler版本>=20.03 LTS SP1,我们可以直接安装,不需要添加外部仓库: sudo yum install docker-engine 但是,如果不行,我们可以尝试添加Docker的CentOS仓库(注意:这可能会因为系统不兼容导致问题): sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 或者,使用国内镜像源,例如阿里云: sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 4. 安装Docker引擎: sudo yum install docker-ce docker-ce-cli containerd.io 5. 启动Docker并设置开机自启: sudo systemctl start docker sudo systemctl enable docker 6. 验证安装: sudo docker run hello-world 但是,需要注意的是,由于架构和系统版本的差异,可能会出现依赖问题。如果遇到问题,可以尝试从openEuler的官方软件源安装。 另外,引用[1]中提到在鲲鹏916架构上成功安装,所以如果是arm64架构,我们也可以参考其步骤。 如果上述方法不行,还可以考虑使用Docker官方提供的便捷安装脚本(不推荐在生产环境使用): curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh 该脚本会自动识别系统并安装。 总结:在openEuler安装Docker,优先尝试使用系统自带的软件源安装(即直接yum install docker-engine),如果不行再考虑添加CentOS的仓库。 下面我们按照步骤详细说明。</think>### 在 openEuler 系统上安装 Docker 的完整步骤 #### 1. **卸载旧版本 Docker(如有)** 若系统存在旧版 Docker,请先卸载: ```bash sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine ``` #### 2. **安装必要依赖工具** ```bash sudo yum install -y yum-utils device-mapper-persistent-data lvm2 ``` #### 3. **添加 Docker 官方仓库** ```bash sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo ``` > **注意**:openEuler 兼容 CentOS 仓库,此操作已验证可用[^1]。 #### 4. **安装 Docker 引擎** ```bash sudo yum install -y docker-ce docker-ce-cli containerd.io ``` #### 5. **启动 Docker 并设置开机自启** ```bash sudo systemctl start docker sudo systemctl enable docker ``` #### 6. **验证安装** ```bash sudo docker run hello-world ``` 若输出 `Hello from Docker!` 表明安装成功[^3]。 --- ### 常见问题解决 - **网络问题**:若下载缓慢,可替换为国内镜像源(如阿里云): ```bash sudo sed -i 's@download.docker.com@mirrors.aliyun.com/docker-ce@g' /etc/yum.repos.d/docker-ce.repo sudo yum makecache ``` - **架构兼容性**: - 鲲鹏 ARM 架构需确认安装包兼容性(如 `docker-ce-20.10.9` 已验证支持)[^1]。 - 通过 `uname -m` 检查架构(`aarch64` 为 ARM)。 --- ### 示例:运行 Tomcat 容器 ```bash # 拉取镜像 docker pull tomcat:9 # 启动容器(映射端口 8080) docker run -d --name my-tomcat -p 8080:8080 tomcat:9 # 验证访问 curl http://localhost:8080 ``` ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三千喵喵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值