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的安装与使用

相关推荐
PyAIGCMaster19 分钟前
ubuntu装P104驱动
linux·运维·ubuntu
奈何不吃鱼20 分钟前
【Linux】ubuntu依赖安装的各种问题汇总
linux·运维·服务器
icy、泡芙22 分钟前
T527-----音频调试
linux·驱动开发·音视频
aherhuo25 分钟前
kubevirt网络
linux·云原生·容器·kubernetes
zzzhpzhpzzz33 分钟前
Ubuntu如何查看硬件型号
linux·运维·ubuntu
蜜獾云36 分钟前
linux firewalld 命令详解
linux·运维·服务器·网络·windows·网络安全·firewalld
陌北v138 分钟前
Docker Compose 配置指南
运维·docker·容器·docker-compose
o(╥﹏╥)1 小时前
linux(ubuntu )卡死怎么强制重启
linux·数据库·ubuntu·系统安全
娶不到胡一菲的汪大东1 小时前
Ubuntu概述
linux·运维·ubuntu
阿里嘎多学长1 小时前
docker怎么部署高斯数据库
运维·数据库·docker·容器