如何使用docker配置ros-noetic環境并使用rviz,gazebo

參考鏈接:【Ubuntu】Docker中配置ROS并可視化Rviz及Gazebo_docker ros-CSDN博客

前言:

其實這個東西是相當必要的,因為我們有時候需要在一臺電腦上跑好幾個項目,每個項目都有不同的依賴,這些依賴沖突搞得人頭皮發麻,與其整理亂糟糟的依賴關系,不如直接給每個項目一個環境。

一、詳細步驟

1.拉取鏡像

sudo docker pull osrf/ros:noetic-desktop-full

2.允許本地機器上的用戶或進程連接到 X?server

sudo xhost +local: 

不允許就是sudo xhost -local

3.構建容器

# volume=/tmp/.X11-unix:/tmp/.X11-unix  掛載宿主機和docker文件互傳
# --device=/dev/dri:/dev/dri   有了這個才能夠顯示,可能讓docker使用顯卡
docker run -it \--volume=/tmp/.X11-unix:/tmp/.X11-unix \--device=/dev/dri:/dev/dri \     --device=/dev/snd \--env="DISPLAY=$DISPLAY" \--env="QT_X11_NO_MITSHM=1" \--name=ros_noetic_test_new \osrf/ros:noetic-desktop-full

4.顯示rviz和gazebo

(1)打開兩個終端,進入容器內

#ros_noetic_test 是容器名
docker exec -it ros_noetic_test bash

(2)刷新環境變量

source ./ros_entrypoint.sh

(3)一個啟動roscore 一個啟動rviz或者gazebo

二、docker 相關指令

1. 查看當前容器

#只能查看當前正在啟動的容器
docker ps
#查看所有容器
docker ps -a

2. 啟動容器

docker start 容器名

3. 停止容器

docker stop 容器名

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/78850.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/78850.shtml
英文地址,請注明出處:http://en.pswp.cn/web/78850.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用 Java 11 的 HttpClient 處理 RESTful Web 服務

在現代 Web 開發中,與 RESTful Web 服務交互是一項核心任務。Java 作為一種廣泛使用的編程語言,提供了多種處理 HTTP 請求的方法。在 Java 11 之前,開發者通常使用 HttpURLConnection 或第三方庫(如 Apache HttpClient)。然而,這些方法要么過于底層,要么需要額外依賴。J…

JVM——垃圾回收

垃圾回收 在Java虛擬機(JVM)的自動內存管理中,垃圾回收(Garbage Collection, GC)是其核心組件之一。它負責回收堆內存中不再使用的對象所占用的內存空間,以供新對象的分配使用。下面我們將深入探討JVM中的…

經典密碼學算法實現

# AES-128 加密算法的規范實現(不使用外部庫) # ECB模式S_BOX [0x63, 0x7C, 0x77, 0x7B, 0xF2, 0x6B, 0x6F, 0xC5, 0x30, 0x01, 0x67, 0x2B,0xFE, 0xD7, 0xAB, 0x76, 0xCA, 0x82, 0xC9, 0x7D, 0xFA, 0x59, 0x47, 0xF0,0xAD, 0xD4, 0xA2, 0xAF, 0x9C, 0x…

追蹤大型語言模型的思想(下)(來自針對Claude的分析)

多步推理 正如我們上面所討論的,語言模型回答復雜問題的一種方式就是簡單地記住答案。例如,如果問“達拉斯所在州的首府是哪里?”,一個“機械”的模型可以直接學會輸出“奧斯汀”,而無需知道德克薩斯州,達拉…

【Hive入門】Hive增量數據導入:基于Sqoop的關系型數據庫同步方案深度解析

目錄 引言 1 增量數據導入概述 1.1 增量同步與全量同步對比 1.2 增量同步技術選型矩陣 2 Sqoop增量導入原理剖析 2.1 Sqoop架構設計 2.2 增量同步核心機制 3 Sqoop增量模式詳解 3.1 append模式(基于自增ID) 3.2 lastmodified模式(基…

[Windows] 藍山看圖王 1.0.3.21021

[Windows] 藍山看圖王 鏈接:https://pan.xunlei.com/s/VOPejo0dRLFd38dbpR7XA6djA1?pwddq9v# 由藍山軟件出品的一款免費高清看圖軟件,支持快速查看高清大圖,支持大部分市面圖片格式。 軟件特點 1、體積小巧,圖像顯示效果清晰…

通配符 DNS 記錄:應用場景與相關風險

隨著組織的互聯網基礎設施不斷擴展,其對配置、設置和決策的需求也隨之增加——從選擇一個可靠的名稱服務器,到確定合適的 DNS 記錄類型以及設置合適的 TTL(生存時間)值。其中一項關鍵決策就是是否要創建通配符 DNS 記錄&#xff0…

快速上手知識圖譜開源庫pykeen教程指南(一)

文章目錄 1 前情提要1.1 AmpliGraph 和 PyKEEN 對比介紹1.2 TransE、ConvE、RotatE幾款模型的差異 2 直接上案例2.1 數據載入:TriplesFactory2.2 模型訓練2.2.1 訓練信息2.2.2 TransE模型可以降維實體、關系的關系 2.3 模型保存與加載、評估2.3.1 保存與模型加載2.3…

飛搭系列 | 獲取彈窗數據,輕松實現回填

前言 飛搭低代碼平臺(FeiDa,以下簡稱“飛搭”),為企業提供在線化、靈活的業務應用構建工具,支持高低代碼融合,助力企業低門檻、高效率和低成本地快速應對市場變化,加速復雜業務場景落地。 概要…

Linux如何安裝AppImage程序

Linux如何安裝AppImage程序 文章目錄 Linux如何安裝AppImage程序 在 Linux 中,.AppImage 是一種便攜式的應用程序格式,無需安裝即可運行。 1.賦予該文件可執行權限 可以使用下列命令,賦予可執行權限 # 舉個例子 chmod x /path/to/MyApp.App…

云硬盤的原理

云硬盤是云計算環境中的一種存儲服務,其原理主要涉及數據存儲、數據冗余與容錯、性能優化以及數據安全等方面,以下是具體介紹: 數據存儲 邏輯卷管理:云硬盤通常會將物理存儲設備劃分為多個邏輯卷,每個邏輯卷可以獨立地…

使用 pgrep 殺掉所有指定進程

使用 pgrep 殺掉所有指定進程 pgrep 是一個查找進程 ID 的工具,結合 pkill 或 kill 命令可以方便地終止指定進程。以下是幾種方法: 方法1:使用 pkill(最簡單) pkill 進程名例如殺掉所有名為 “firefox” 的進程&…

堆排序(算法題)

#include <bits/stdc.h> using namespace std;const int N 100010; // 堆數組的最大容量 int h[N], s; // h[]存儲堆元素&#xff0c;s表示當前堆的大小// 下沉操作&#xff1a;調整以i為根的子樹&#xff0c;維護小頂堆性質 void down(int i) {int t i; /…

極狐GitLab 如何將項目共享給群組?

極狐GitLab 是 GitLab 在中國的發行版&#xff0c;關于中文參考文檔和資料有&#xff1a; 極狐GitLab 中文文檔極狐GitLab 中文論壇極狐GitLab 官網 共享項目和群組 (BASIC ALL) 在極狐GitLab 16.10 中&#xff0c;更改為在成員頁面的成員選項卡上顯示被邀請群組成員&#xf…

用 CodyBuddy 幫我寫自動化運維腳本

我正在參加CodeBuddy「首席試玩官」內容創作大賽&#xff0c;本文所使用的 CodeBuddy 免費下載鏈接&#xff1a;騰訊云代碼助手 CodeBuddy - AI 時代的智能編程伙伴”。 #CodeBuddy首席試玩官 背景 我個人是非常喜歡 Jenkins 自動化部署工具的&#xff0c;之前都是手寫 Jenki…

基于windows安裝MySQL8.0.40

基于windows安裝MySQL8.0.40 基于windows 安裝 MySQL8.0.40&#xff0c;解壓文件到D:\mysql-8.0.40-winx64 在D:\mysql-8.0.40-winx64目錄下創建my.ini文件&#xff0c;并更新一下內容 [client] #客戶端設置&#xff0c;即客戶端默認的連接參數 # 設置mysql客戶端連接服務…

Python小酷庫系列:5個常用的dict屬性化訪問擴展庫

5個常用的dict屬性化訪問擴展庫 嵌套結構高級功能性能綜合建議 在前面我們詳細講解了 Box和 Munch這兩個dict屬性化訪問的擴展庫&#xff0c;總體而言它們主要用于提升配置文件數據、JSON對象數據的可讀性&#xff0c;減少了代碼中雙引號。在這一領域中還有dotmap、addict 和…

OC語言學習——面向對象(下)

一、OC的包裝類 OC提供了NSValue、NSNumber來封裝C語言基本類型&#xff08;short、int、float等&#xff09;。 在 Objective-C 中&#xff0c;**包裝類&#xff08;Wrapper Classes&#xff09;**是用來把基本數據類型&#xff08;如 int、float、char 等&#xff09;“包裝…

密碼學系列 - SR25519與ED25519

SR25519 SR25519 是一種高級的數字簽名算法&#xff0c;它基于 Schnorr 簽名方案&#xff0c;使用的是 Curve25519 橢圓曲線。這種簽名算法在密碼學社區中廣受歡迎&#xff0c;特別是在區塊鏈和加密貨幣領域。以下是關于 SR25519 的詳細介紹。 SR25519 簡介 SR25519 是一種 …

Vue3源碼學習7-PatchFlags使用位算符

文章目錄 前言? 一、基礎知識&#xff1a;什么是二進制&#xff1f;? 二、位運算的基本操作? 三、左移運算 <<? 四、實際用途&#xff1a;如何用于狀態標記&#xff08;PatchFlags&#xff09;? 五、組合多個狀態標記? 六、小結口訣&#xff08;記憶&#xff09;?…