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

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.,可以多试几次,或者那么把命令分开执行:

curl -s -L -O https://nvidia.github.io/nvidia-docker/gpgkey #大写欧,会在本地保存一个gpgkey文件
sudo apt-key add gpgkey#会输出OK

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) /  
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分区解决了

# 检查现有的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的安装与使用

要在VSCode中配置CARLA,您可以按照以下步骤进行操作: 1. 安装VSCode:首先,确保您已经安装了最新版本的VSCode编辑器。您可以从VSCode的官方网站(https://code.visualstudio.com/)下载并安装适用于您的操作系统的版本。 2. 安装Python插件:打开VSCode并转到扩展视图(按下Ctrl+Shift+X或点击侧边栏的扩展图标)。搜索并安装适用于Python的官方插件。 3. 创建新的虚拟环境:为CARLA项目创建一个新的虚拟环境是个好主意。在VSCode的终端中使用以下命令创建一个新的虚拟环境: ``` python -m venv carla-env ``` 4. 激活虚拟环境:在VSCode终端中使用以下命令激活虚拟环境: - 在Windows上: ``` .\carla-env\Scripts\activate ``` - 在Mac/Linux上: ``` source carla-env/bin/activate ``` 5. 安装CARLA依赖项:在激活的虚拟环境中,使用以下命令安装CARLA所需的依赖项: ``` pip install carla ``` 6. 配置调试器:在VSCode中打开CARLA项目文件夹。然后,点击左侧的调试图标(或使用快捷键Ctrl+Shift+D)打开调试视图。点击视图左上角的齿轮图标以打开`launch.json`文件。 7. 添加调试配置:在`launch.json`文件中,点击“Add Configuration”按钮并选择"Python"。这将在`launch.json`中添加一个默认的Python调试配置。 8. 配置调试环境:在`launch.json`文件中,将`program`属性设置为CARLA启动脚本的路径。例如: ``` "program": "${workspaceFolder}/carla/PythonAPI/examples/example.py" ``` 9. 启动调试:点击VSCode左上角的绿色播放按钮以启动调试会话。CARLA应该开始运行,并且您可以在VSCode中进行调试。 这些步骤会帮助您在VSCode中配置CARLA,并为您的项目提供调试功能。请根据您的实际情况进行相应的修改和调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值