3-基于容器安装carla
用户可以将基于CARLA发布的镜像拉到Docker容器中运行。这对于以下用户很有用:
想要运行CARLA而不需要安装所有依赖项
运行多台CARLA服务器,进行GPU映射。
运行不显示的CARLA服务器
本节解释了运行CARLA图像的要求,以及如何使用OpenGL和Vulkan图形api运行图像。
1 开始之前
您需要安装:
Docker:按照这里的安装说明操作(Install | Docker Docs)。
NVIDIA容器工具包:NVIDIA容器工具包是一个库和工具集,它将NVIDIA图形设备暴露给Linux容器。它是专门为在Linux主机系统上运行的Linux容器或在Linux的Windows子系统版本2下的Linux发行版中运行的Linux容器设计的。按照该说明(Installing the NVIDIA Container Toolkit — NVIDIA Container Toolkit 1.16.2 documentation)安装nvidia-docker2包。
2 在容器中运行CARLA
1. 拉取CARLA镜像。
您可以提取最新的CARLA镜像或特定的发布版本。最新映像指的是最新的打包版本。要提取镜像,请运行以下命令之一:
# Pull the latest image
docker pull carlasim/carla:latest# Pull a specific version
docker pull carlasim/carla:0.9.12
2. 运行CARLA容器。
不同版本的CARLA支持不同的图形api,这可能会影响Docker镜像运行的条件:
0.9.12只支持Vulkan
0.9.7+支持Vulkan和OpenGL。
carla 0.9.12:
运行带有显示的CARLA:
sudo docker run --privileged --gpus all --net=host -e DISPLAY=$DISPLAY carlasim/carla:0.9.12 /bin/bash ./CarlaUE4.sh
在非屏幕模式下(不显示)运行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
CARLA 0.9.7到0.9.11
使用Vulkan运行CARLA:
sudo docker run --privileged --gpus all --net=host -e DISPLAY=$DISPLAY -e SDL_VIDEODRIVER=x11 -v /tmp/.X11-unix:/tmp/.X11-unix:rw carlasim/carla:0.9.11 /bin/bash ./CarlaUE4.sh -vulkan <-additonal-carla-flags>
只要您的机器有显示器,此命令将允许您使用Vulkan运行CARLA映像。有关在非屏幕模式下运行Vulkan的信息,请参阅渲染文档(https://carla.readthedocs.io/en/0.9.13/adv_rendering_options/#off-screen-mode)。
使用OpenGL运行CARLA:
docker run -e DISPLAY=$DISPLAY --net=host --gpus all --runtime=nvidia carlasim/carla:<version> /bin/bash CarlaUE4.sh -opengl <-additonal-carla-flags>
3. (可选)配置Docker标志
上面的命令使用了一些Docker标志,可以根据你的需要进行配置:
网络:--net=host参数将允许容器共享主机的整个网络。如果希望将主机上的特定端口映射到容器端口,可以使用标志-p <host-ports>:<container-ports>。
gpu:您可以使用--gpu all来选择使用所有gpu,或者使用--gpu '"device=<gpu_01>,<gpu_02>"'来选择特定的gpu。更多信息请看这里(Resource constraints | Docker Docs)。
离屏模式
如果你在没有显示器的机器上运行CARLA, OpenGL不需要配置,但是你需要在CARLA 0.9.12之前使用Vulkan执行一些额外的步骤来做同样的事情。有关信息,请参阅相关文档(https://carla.readthedocs.io/en/0.9.13/adv_rendering_options/#off-screen-mode)。
相关文章:
3-基于容器安装carla
用户可以将基于CARLA发布的镜像拉到Docker容器中运行。这对于以下用户很有用: 想要运行CARLA而不需要安装所有依赖项 运行多台CARLA服务器,进行GPU映射。 运行不显示的CARLA服务器 本节解释了运行CARLA图像的要求,以及如何使用OpenGL和Vulkan图形api运行…...
循环程序结构课堂练习题解
A 如果药够, 则拿药, 否则记录 #include <stdio.h>int main() {int m, n, i;scanf("%d", &m);scanf("%d", &n);int ans 0;for(i 1; i < n; i ){int temp;scanf("%d", &temp);if(m > temp){m - temp;}else{ans ;}}p…...
SpringBoot搭建
第一种创建方式 第二种创建方式 第三种创建 第四种手动创建 最后把controller写好...
【ChatGPT】Python 实现计算两线段的变换矩阵
作为一个数学专家,请给出下面的这个问题的数学解法; 要求如下: 1. 给出数学推理公式 2. 给出 python 的实现方式已知条件: 1. 三维空间中,线段L1,L1 由点 A1 (ax1, ay1, az1) 与 B1 (bx1, by1, bz1) 组成&a…...
大数据Hologres(二):Hologres 快速入门
文章目录 Hologres 快速入门 一、资源领取 二、入门体验 1、创建数据库 2、创建表 3、导入示例数据 4、查询表中数据 Hologres 快速入门 一、资源领取 领取链接: 阿里云免费试用 - 阿里云 (aliyun.com) 二、入门体验 1、创建数据库 进入Hologres管理控制…...
华为仓颉语言入门(7):深入理解 do-while 循环及其应用
解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 用法说明 do-while 表达式是一种控制循环的结构,它允许代码在每次循环之后进行条件判断。在这个表达式中,无论条件一开始是否满足,代码块都会被至少执行一次。 语法…...
在传销案件中数据库取证的分步指南
金字塔计划的特点是分层结构,主要由招募新成员的机制驱动。取证部门调查这些方案时,往往依靠数据库记录来分析这种结构。这些记录详细描述了上级和下级之间的关系,使调查人员能够描绘出组织的动态。在本文中,我们将探讨如何利用数…...
数据结构与算法——Java实现 21.栈
目录 一、概述 二、基于链表的栈的实现 接口 链表接口实现类 测试类 编辑 三、基于数组的栈的实现 接口 数组接口实现类 测试类 妈妈,生日快乐,希望你健康快乐没有烦恼也不会有病痛 —— 24.9.28 一、概述 计算机科学中,stack是一种线性的…...
实验一 网络基础及仿真模拟软件Packet Tracer 入门
实验一 网络基础及仿真模拟软件Packet Tracer 入门 【实验目的】 一、认识 Packet Tracer 。 二、学习使用 Packet Tracer 进行拓扑的搭建。 三、学习使用 Packet Tracer 对设备进行配置,并进行简单的测试。 【实验内容和结果】 一、拖放设备和布置线缆 二、用…...
建立分支提交代码
git分支 git branch 产看当前分支 git branch -a 查看所有分支 git checkout 分支名 切换分支 git checkout -b 分支名 建立分支(仅仅是在本地建立了,并没有关联线上) git push --set-upstream origin 分支名 把本地分支推到先线上 gti add …...
认识 Linux操作系统
前言 电脑由硬件和软件相构成,在软件中操作系统只是其中的一个分支,今天我们学习的Linux有是操作系统中的一种,不同的操作系统有自己的特点和生存生态。市面上大多数电脑自带的操作系统都是我们熟知的Windows。Linux将会为大家带来开源的新天…...
AI时代程序员的核心竞争力提升与保持之道
一、引言 ---- 随着人工智能(AI)和生成式人工智能(AIGC)技术的迅速发展,包括chatgpt、midjourney、claude等大语言模型接连不断地涌现,AI辅助编程工具在程序员社区中的普及正在悄然改变我们的工作方式。…...
状态模式原理剖析
《状态模式原理剖析》 状态模式(State Pattern) 是一种行为设计模式,它允许对象在其内部状态改变时改变其行为。换句话说,当对象状态发生变化时,它的行为也会随之变化。 通过状态模式,可以消除通过 if-else…...
若伊(前后端分离)学习笔记
基础应用篇 1. 若伊搭建 若伊版本 若依官方针对不同开发需求提供了多个版本的框架,每个版本都有其独特的特点和适用场景: 前后端混合版本 :RuoYi结合了SpringBoot和Bootstrap的前端开发框架,适合快速构建传统的Web应用程序&…...
Elasticsearch学习笔记(2)
索引库操作 在Elasticsearch中,Mapping是定义文档字段及其属性的重要机制。 Mapping映射属性 type:字段数据类型 1、字符串: text:可分词的文本,适用于需要全文检索的情况。keyword:用于存储精确值&am…...
Vue devtools 插件
一、安装 去这下载https://chrome.zzzmh.cn/ 打开chrome的扩展程序 再打开开发模式 把刚才下载的拖到这里 然后把它固定到工具栏 就是这样了。 二、使用 程序通过open on live server后,打开开发者工具,找到vue就可以了。 这是代码 <div id"ap…...
Ubuntu 16.04安装填坑记录
一. 问题描述: (1)Ubuntu 16.04使用USB启动盘安装时,出现"try ubuntu without installation"或“install ubuntu”选择,Enter选择安装后,显示器黑屏无任何显示。 原因分析: 显示黑…...
python的pyinstaller
1、pyinstaller --onefile -w *.py 可以生成可执行文件 -w就是不需要有console窗体出现、 2、 console窗体会出现一些警告。 比如 Warning: QT_DEVICE_PIXEL_RATIO is deprecated. Instead use: QT_AUTO_SCREEN_SCALE_FACTOR to enable platform plugin controlled per-scre…...
Vue3(五) 组件通信大汇总
文章目录 一、props二、自定义事件三、mitt四、v-model1.v-model的本质2.v-model用在组件标签上3.更换modelValue4.更换modelValue时,可以在组件标签上多次使用v-model 五、$attrs六、$refs,与¥parent1. 回顾标签ref属性修改组件信息2. $refs实现父修改所…...
红队信息搜集扫描使用
红队信息搜集扫描使用 红队行动中需要工具化一些常用攻击,所以学习一下 nmap 等的常规使用,提供灵感 nmap 帮助 nmap --help主机扫描 Scan and no port scan(扫描但不端口扫描)。-sn 在老版本中是 -sP,P的含义是 P…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
前端导出带有合并单元格的列表
// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
Linux --进程控制
本文从以下五个方面来初步认识进程控制: 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程,创建出来的进程就是子进程,原来的进程为父进程。…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...
Linux 内存管理实战精讲:核心原理与面试常考点全解析
Linux 内存管理实战精讲:核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用,还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...
RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)
RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发,后来由Pivotal Software Inc.(现为VMware子公司)接管。RabbitMQ 是一个开源的消息代理和队列服务器,用 Erlang 语言编写。广泛应用于各种分布…...
CVPR2025重磅突破:AnomalyAny框架实现单样本生成逼真异常数据,破解视觉检测瓶颈!
本文介绍了一种名为AnomalyAny的创新框架,该方法利用Stable Diffusion的强大生成能力,仅需单个正常样本和文本描述,即可生成逼真且多样化的异常样本,有效解决了视觉异常检测中异常样本稀缺的难题,为工业质检、医疗影像…...
Python网页自动化Selenium中文文档
1. 安装 1.1. 安装 Selenium Python bindings 提供了一个简单的API,让你使用Selenium WebDriver来编写功能/校验测试。 通过Selenium Python的API,你可以非常直观的使用Selenium WebDriver的所有功能。 Selenium Python bindings 使用非常简洁方便的A…...
