1、创建项目目录结构

mkdir my-softroce-project
cd my-softroce-project
mkdir softroce_config

2、编写“start_softroce.sh”脚本

#!/bin/bash

# 加载 SoftRoCE 模块
modprobe rdma_rxe

# 添加并启用 RXE 设备
rdma link add rxe0 type rxe netdev eth0

# 打印 RDMA 设备信息
ibv_devices

# 保持容器运行
tail -f /dev/null

保持并关闭文件

3、编写Dockerfile

在“my-softroce-project”目录下创建“Dockerfile”文件:

# 使用官方的 Ubuntu 镜像作为基础镜像
FROM ubuntu:22.04

# 更新包列表并安装必要的软件包
RUN apt-get update && apt-get install -y \
    build-essential \
    cmake \
    libibverbs-dev \
    rdma-core \
    ibverbs-utils \
    infiniband-diags \
    iproute2 \
    perftest \
    iputils-ping \
    infiniband-diags ibverbs-utils \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

# 添加 SoftRoCE 配置脚本
COPY softroce_config/start_softroce.sh /etc/softroce_config/start_softroce.sh
RUN chmod +x /etc/softroce_config/start_softroce.sh

# 启动 SoftRoCE 服务
CMD ["/etc/softroce_config/start_softroce.sh"]

4、构建Docker镜像

在“my-softroce-project”目录下运行以下命令来构建Docker镜像:

docker build -t my-softroce-image .

5、运行容器

构建完成后,可以使用一下命令运行容器:

docker run -d --name my-softroce-container --privileged my-softroce-image

6、进入容器

如需要进入容器内部执行其他操作,可以使用一下命令:

docker exec -it my-softroce-container /bin/bash

7、验证softroce服务

在容器内,你可以运行一下命令验证SoftRoce是否正常工作:

ibv_devices

Docker安装softroce_Docker