前言:
现在具身智能领域最近蓬勃发展,从2025年春节宇树机器人上春晚到今年2026年松延动力、宇树科技《武 BOT》、魔法原子、银河通用等4家机器人再上春晚,而且宇树机器人1年内展现了非常高的迭代效率。而机器人大脑芯片方面,除了英伟达,现在就是地瓜机器人的RDK S100(800/128TOPS(int8))。那么如何搭个环境来开发机器人呢?这里有一个基础的环境搭建。
Docker容器部署基础步骤:
1、Docker安装
1.1 如没有使用 GNOME,必须安装以启用从 Docker Desktop 访问终端:
sudo apt install gnome-terminal
1.2在Ubuntu上安装Docker Desktop
sudo apt-get update
sudo apt install ./docker-desktop-amd64.deb(提前下载)

Docker Desktop默认安装于:/opt/docker-desktop
Docker Desktop 安装程序还安装了一个包含云集成功能的 Docker CLI 二进制文件,本质上是 Compose CLI 的封装器。符号链接确保包装器能够访问经典的Docker CLI。 /usr/local/bin/com.docker.cli ``/usr/bin/docker ``/usr/bin/docker ``/usr/local/bin/com.docker.cli
启动 Linux Docker Desktopke可打开terminal终端并运行:
systemctl --user start docker-desktop
Docker Desktop 启动后,其内嵌的 Docker Engine 会在 docker version 的 Server 段明确标注版本号。
docker version
若需确认已安装的 .deb 包版本:
dpkg -l | grep docker-desktop

若执行 docker version 提示无法连接守护进程,需先启动 Docker Desktop(图形界面启动或运行 systemctl --user start docker-desktop)。docker --version 仅显示 Docker CLI 版本,不包含 Docker Desktop 版本,需以 docker version 的 Server 段为准。
以下面指令进行测试,注意nvdia-smi是否可用
docker run --rm --gpus all nvidia/cuda:11.8.0-base-ubuntu22.04 nvidia-smi
2、Ubuntu下安装 NVIDIA 容器工具包
sudo apt-get update && sudo apt-get install -y --no-install-recommends \
ca-certificates \
curl \
gnupg2
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
export NVIDIA_CONTAINER_TOOLKIT_VERSION=1.18.2-1
sudo apt-get install -y \
nvidia-container-toolkit=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
nvidia-container-toolkit-base=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
libnvidia-container-tools=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
libnvidia-container1=${NVIDIA_CONTAINER_TOOLKIT_VERSION}
配置方法1:通过以下命令配置容器运行时:
sudo nvidia-ctk runtime configure --runtime=docker
重启 Docker 守护进程
sudo systemctl restart docker
配置方法2:以无根模式运行的 Docker 容器运行时:
nvidia-ctk runtime configure --runtime=docker --config=$HOME/.config/docker/daemon.json
重启无根 Docker 守护进程:
systemctl --user restart docker
通过以下命令进行配置:
sudo nvidia-ctk config --set nvidia-container-cli.no-cgroups --in-place
配置方法3:配置containerd,通过以下命令配置容器运行时
sudo nvidia-ctk runtime configure --runtime=containerd
重启容器:
sudo systemctl restart containerd
3、Docker用户组
完成Docker基础环境安装后,还需将无root权限的用户添加到Docker用户组中:
sudo groupadd docker
sudo gpasswd -a ${USER} docker
sudo service docker restart
4、Docker离线镜像加载
先下载离线镜像(区分CPU和GPU版本,gpu就是带3090等nvdia网卡,地瓜算法工具链OpenExplore包Docker等发布下载 - 应用开发 / 算法工具链 - 地瓜机器人论坛
https://forum.d-robotics.cc/t/topic/28035),并使用命令将镜像加载到本地。这个提供了包含完整开发环境的Docker镜像,大大简化了开发环境的部署过程。
docker load -i ai_toolchain_ubuntu_22_s100_xxx.tar
如
docker load -i ai_toolchain_ubuntu_22_s100_gpu_v3.2.0.tar

5、OE包下载启动及启动
接下来,可在OE包一级目录下直接运行以下脚本启动当前OE版本所对应的Docker容器(data 为评测数据集文件夹路径,需提前创建好后再运行命令,数据集可从如下链接下载:
数据集下载 - OpenExplorer
https://toolchain.d-robotics.cc/guide/appendix/dataset_link.html)
sh run_docker.sh data/
问题:

没能找到英伟达驱动
- 如用vmware虚拟机,默认不直通物理 GPU,上述 GPU 配置无法生效。需要修改驱动参数解除虚拟化限制:
# 编辑 grub 配置
sudo nano /etc/default/grub
# 将 GRUB_CMDLINE_LINUX_DEFAULT 改为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia.NVreg_OpenRmEnableUnsupportedGpus=1"
# 保存后更新 grub 并重启
sudo update-grub && sudo reboot
或者在原生ubuntu下使用gpu版本的。
6、模型量化
推荐在浮点模型训练完成后优先选择简单易用的PTQ量化方案,只在精度问题确实无法解决时再切换到QAT量化方案。
7、模型部署
当模型完成量化转换后,即可将编译好的模型部署在开发板环境推理运行。
hrt_model_exec成功编译后,将生成的output_shared_s100_aarch64拷贝到开发板的可写路径,运行如下script中的脚本即可使用该工具。