Ubuntu配置carla docker环境

前言: 本文只在以下设备成功运行, 其他设备不保证能成功, 可以参考在自己设备进行配置

环境

  • ubuntu 20.04
  • carla 0.9.15
  • gpu 3060(notebook)

安装显卡驱动&nvidia-container-toolkit

显卡驱动

安装完成系统后直接在'软件和更新->附加驱动'直接选择470(proprietary, tested), 安装之前并没有禁用nouveau和关闭gdm3, 重启之后nvidia-smi 正常输出

nvidia-container-toolkit安装如下

【Docker】Docker及Nvidia Container Toolkit安装

Add the package repositories

shell 复制代码
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -

上条命令如果输出:gpg: no valid OpenPGP data found.,可以多试几次,或者那么把命令分开执行:

shell 复制代码
curl -s -L -O https://nvidia.github.io/nvidia-docker/gpgkey #大写欧,会在本地保存一个gpgkey文件
sudo apt-key add gpgkey#会输出OK
shell 复制代码
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list

该命令成功后可以查看cat /etc/apt/sources.list.d/nvidia-docker.list,文个中会有如下内容:

复制代码
deb https://nvidia.github.io/libnvidia-container/stable/ubuntu16.04/$(ARCH) /  
#deb https://nvidia.github.io/libnvidia-container/experimental/ubuntu16.04/$(ARCH) /  
deb https://nvidia.github.io/nvidia-container-runtime/stable/ubuntu16.04/$(ARCH) /  
#deb https://nvidia.github.io/nvidia-container-runtime/experimental/ubuntu16.04/$(ARCH) /  
deb https://nvidia.github.io/nvidia-docker/ubuntu16.04/$(ARCH) /  
shell 复制代码
sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
#更新 使用如下安装 nvidia-container-toolkit 换成 nvidia-docker2
sudo apt-get install -y nvidia-docker2
#####################或者分开执行#########################
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
########################################################
sudo systemctl restart docker
sudo docker run --gpus all --rm nvidia/cuda:10.0-base nvidia-smi

注意一定要 sudo systemctl restart docker

如果上面的gpg key添加失败,也可以参考进行离线安装Docker离线安装Nvidia-container-toolkit实现容器内GPU调用, 注意安装完了一定要重启docker服务!

Carla

获取carla镜像

由于2024/05中国的镜像源被封了, 参考Docker Hub 镜像加速器下载carla镜像
docker pull docker.awsl9527.cn/carlasim/carla:0.9.15

启动镜像(服务端)

参考在Docker中使用CARLA

复制代码
sudo docker run --privileged --gpus all --net=host -v /tmp/.X11-unix:/tmp/.X11-unix:rw carlasim/carla:0.9.12 /bin/bash ./CarlaUE4.sh -RenderOffScreen
  • 注意这里如果出现 **Unknown PCM default **

    则需要在上面命令中添加-nosound

  • 如果出现不报错,但输出Killed 并退出

    则可能是内存不足, 我这里是内存不足, 按照下面增大swap分区解决了

bash 复制代码
# 检查现有的Swap分区
sudo swapoff -a
# 删除旧的swap文件
sudo rm /swapfile
# 生成新的swap文件8G
sudo dd if=/dev/zero of=/swapfile bs=1G count=8
# 设置权限
sudo chmod 600 /swapfile
# 生效
sudo mkswap /swapfile
# 确认新的Swap文件
sudo swapon /swapfile
# 为了确保在系统重启后Swap文件仍然有效,需要将其添加到`/etc/fstab`文件中
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

客户端运行

首先需要下载 carla, 配置环境, 我这里使用python版本为3.8.12

然后进入下载好的 cd ./carla/PythonAPI/examples, 再运行python automatic_control.py

Docker离线安装Nvidia-container-toolkit实现容器内GPU调用
【Docker】Docker及Nvidia Container Toolkit安装
Docker离线安装Nvidia-container-toolkit实现容器内GPU调用
仿真实战 | Docker版Carla的安装与使用

相关推荐
Johny_Zhao1 天前
centos7安装部署openclaw
linux·人工智能·信息安全·云计算·yum源·系统运维·openclaw
haibindev1 天前
在 Windows+WSL2 上部署 OpenClaw AI员工的实践与踩坑
linux·wsl2·openclaw
元Y亨H1 天前
华硕主机重装 Ubuntu 系统完全指南
ubuntu
用户13573999256601 天前
Windows 从 0 搭建 WSL2 原生 AI 开发环境:Codex + Docker + VSCode
docker
vi_h1 天前
在 macOS 上通过 Docker 安装并运行 Ollama(详细可执行教程)
macos·docker·ollama
黑心老魔1 天前
通过 Docker 创建开发环境
docker·开发环境
冬奇Lab2 天前
一天一个开源项目(第41篇):Workout.cool - 现代化开源健身教练平台,训练计划与进度追踪
docker·开源·资讯
天朝八阿哥2 天前
使用Docker+vscode搭建离线的go开发调试环境
后端·docker·visual studio code
0xDevNull2 天前
Linux切换JDK版本详细教程
linux