激光雷达标定入门(5)Docker网络配置

1 前言

这一步是对之前专栏中一键安装介绍的一点扩展,是因为在后续的部署中,特别是雷达的驱动中,发现在docker的容器中无法接到雷达的数据,但是在容器外功能包能正常收到雷达的信号,后面发现是容器的IP没有在雷达的IP网段,即使主机设置的网段跟雷达一致!

根本原因:

这是因为使用的小鱼一键配置是从网络端直接拉过来的,所以在配置完了之后其实已经在系统里生成好了容器,并且这个容器会一直在,后面docker start只是启动这个已经生成的容器,在这里需要注意docker run和docker start的区别(docker run是将镜像放入容器生成一个新的容器,而docker start只是启动这个容器),所以这样想要直接更改网络模式 —net=host是不行的,想想解决思路就是从根本上解决,更改小鱼一键安装的配置文件,然后再在主机上安装

2 小鱼自定义安装

更改小鱼一键安装的配置文件,然后再在主机上安装,这样安装的容器就是直接更改了桥接模式,这是能想到最简单的更改桥接模式的方法

详细参考:https://github.com/fishros/install

============================分割线

整理一下整个思路:

1.先自定义安装docker+ros

2.然后直接开一个ws测试即可

下载工程看架构

在这里插入图片描述

3 Docker的常用命令

Docker是一种容器化技术,用于构建、运行和管理容器化应用程序。以下是一些常用的Docker命令:

  1. docker pull <image>:从Docker镜像仓库下载一个镜像到本地。
  2. docker run <options> <image>:创建并运行一个基于指定镜像的容器。
  3. docker ps:显示正在运行的容器列表。
  4. docker ps -a:显示所有容器的列表,包括停止状态的容器。
  5. docker images:显示本地镜像列表。
  6. docker stop <container>:停止一个运行中的容器。
  7. docker start <container>:启动一个已停止的容器。
  8. docker restart <container>:重启一个容器。
  9. docker rm <container>:删除一个已停止的容器。
  10. docker rmi <image>:删除一个本地镜像。
  11. docker exec <options> <container> <command>:在运行中的容器中执行一个命令。
  12. docker logs <container>:查看容器的日志输出。
  13. docker inspect <container>:查看容器的详细信息,包括配置、网络等。
  14. docker build <options> <path>:从Dockerfile构建一个新的镜像。
  15. docker-compose up:使用Docker Compose启动多个容器应用。

这些命令只是Docker命令的一部分,还有很多其他命令和选项可以用于更高级的Docker操作。您可以通过运行docker --help或查阅Docker官方文档来获取更详细的信息和用法说明。

4 参考

参考1:https://blog.51cto.com/u_14344/6685453

参考2:https://blog.csdn.net/qq_40541102/article/details/126246584

参考3:https://blog.csdn.net/weixin_43855938/article/details/131553442

参考4:https://blog.51cto.com/u_16099316/6467190

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/639824.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

最新阿里云免费SSL证书申请使用介绍

为网站部署SSL证书已经是现在站长的必须要做的工作&#xff0c;然而SSL证书并不全是免费的&#xff0c;免费且好用的资源也越来越有限&#xff0c;毕竟嘛&#xff0c;这些都需要成本。 PS&#xff1a;最下方有最终建议方案。 本文介绍当前(2024年)阿里云免费SSL证书信息。 阿…

二极管解读:封装与外观、参数意义、发展历史与未来趋势

在电子技术不断进步的今天&#xff0c;二极管这一基础元件的作用不断扩大&#xff0c;其性能及应用成为电子设计师和爱好者们讨论的热门话题。本文将从四个角度为您解读二极管的世界&#xff1a;封装和外观特征、参数及其重要意义、发展历史&#xff0c;以及未来技术发展趋势。…

60 C++ 多线程 ------原子操作概念,atomic关键字

前提&#xff1a;回忆使用 互斥量加锁 完成共享数据的访问。 mutex mymutex; //锁子 mymutex.lock(); // 锁住完成的代码 mymutex.unlock(); 一 互斥量好是好&#xff0c;但是在这种case下&#xff0c;效率并不高&#xff0c;因此C给我们提供了原子操作的概念&#xff0c;…

leetcode2744. 最大字符串配对数目

Problem: 2744. 最大字符串配对数目 文章目录 题目解题方法1复杂度1Code1解题方法2复杂度2Code2 题目 给你一个下标从 0 开始的数组 words &#xff0c;数组中包含 互不相同 的字符串。 如果字符串 words[i] 与字符串 words[j] 满足以下条件&#xff0c;我们称它们可以匹配&a…

Vue3使用

1、列表实现 <el-table :data"tableData" border style"width: 100%" selection-change"handleSelectionChange" :header-cell-style"{text-align:center}"><el-table-column type"selection" width"55"…

使用turf.polygon判断点是否在面内部

const poly turf.polygon(obj.features[0].geometry.coordinates) const point turf.point(newPoint)const isWithinBoundary turf.booleanPointInPolygon(point, poly) console.log(isWithinBoundary, 点是否在面内)ps&#xff1a;需要注意的是&#xff0c; 如果使用turf.p…

【注解】@RequiredArgsConstructor 按需自动生成构造函数,举例说明

RequiredArgsConstructor 是Lombok库中的一种注解&#xff0c;它用于自动生成构造函数&#xff0c;针对于final字段的构造函数。它的作用包括以下几点&#xff1a; 自动生成构造函数&#xff1a;RequiredArgsConstructor 注解自动生成一个构造函数&#xff0c;该构造函数接受标…

以太坊账户地址与比特B地址生成方法对比

作者 张群&#xff08;赛联区块链教育首席讲师&#xff0c;工信部赛迪特聘资深专家&#xff0c;CSDN认证业界专家&#xff0c;微软认证专家&#xff0c;多家企业区块链产品顾问&#xff09;关注张群&#xff0c;为您提供一站式区块链技术和方案咨询。 以太坊和比特B地址在生成方…

Vue2:使用pubsub-js实现组件间通信

一、场景描述 我们学习了全局事件总线&#xff0c;通过自定义事件的方式来进行组件间通信。 现在&#xff0c;再学习一个第三方库pubsub-js&#xff0c;消息订阅与发布的方式来实现组件间通信。 二、使用pubsub-js 1、安装 npm i pubsub-js2、组件里引入 import pubsub fr…

17.JVM-[一篇通]

文章目录 JVM1.JVM 简介 (一个进程有一个JVM)1.1JVM 发展史1.2 JVM 和《Java虚拟机规范》 2.JVM 运行流程2.1JVM 执行流程 3.JVM 运行时数据区3.1 堆&#xff08;线程共享 一个进程只有一份堆&#xff09;3.2Java虚拟机栈&#xff08;线程私有 每个线程都有一份属于自己的栈&am…

Linux网络编程(二-套接字)

目录 一、背景知识 1.1 端口号 1.2 网络字节序 1.3 地址转换函数 二、Socket简介 三、套接字相关的函数 3.1 socket() 3.2 bind() 3.3 connect() 3.4 listen() 3.5 accept() 3.6 read()/recv()/recvfrom() 3.7 send()/sendto() 3.8 close() 四、UPD客服/服务端实…

规范文字引言与材料

撰写引言 什么是引言&#xff1f; 引言又叫前言、绪论、引子、绪言等。 引言写在书或文章的正文前面&#xff0c;是类似序言或导言的部分。 在科研论文中&#xff0c;引言是引导读者了解研究背景、目的、 意义和研究问题的关键部分。对于人工智能方向的论 文&#xff0c;引言…

x-cmd pkg | curl - 极其强大的网络请求处理工具

目录 简介用户首次快速实验指南轻量级网络请求工具安全竞品和相关作品进一步探索 简介 curl&#xff08;Client for URLs&#xff09;是一款网络请求工具。 curl 于 1996 年首次发布。它最初被命名为 httpget 后更名为curl。 curl 常用于发送网络请求&#xff0c;它支持多种网…

一条sql是如何运行的

在我们平时使用sql的时候&#xff0c;基本是基于黑盒的使用方式&#xff0c;在客户端输入一条sql语句&#xff0c;然后回显想要的数据&#xff0c;对于mysql server端内部如何运行的以及与存储引擎如何交互的不得而知。 通过下面一幅图&#xff0c;大致描述客户端和服务端交互…

HTML中有哪些属于表单元素?那些属于表格元素?请分别列举5个并说明用途?

在HTML中&#xff0c;有一些元素是专门用于表单的输入和布局&#xff0c;还有一些元素是专门用于表格的显示。以下是五个表单元素和五个表格元素&#xff0c;以及它们的用途&#xff1a; 表单元素&#xff1a; <input>&#xff1a;这是最常用的表单元素&#xff0c;用于…

免费分享Deepl和google谷歌翻译api接口

谷歌翻译API可以帮助用户在不同语言之间进行即时翻译&#xff0c;支持超过 200 种语言的互译功能。 接口亲测是可用&#xff0c;简单而且速度很快。专用跨境电商等业务。 接口地址&#xff1a;https://www.tanshuapi.com/market/detail-98 接口请求测试phthon示例&#xff1a…

什么是VUE 创建第一个VUE实例

一、什么是Vue 概念&#xff1a;Vue (读音 /vjuː/&#xff0c;类似于 view) 是一套 构建用户界面 的 渐进式 框架 Vue2官网&#xff1a;Vue.js 1.什么是构建用户界面 基于数据渲染出用户可以看到的界面 2.什么是渐进式 所谓渐进式就是循序渐进&#xff0c;不一定非得把Vu…

Android 基础技术——addView 流程

笔者希望做一个系列&#xff0c;整理 Android 基础技术&#xff0c;本章是关于 addView 在了解 addView 流程之前&#xff0c;先回答下以下几个问题&#xff1a; PhoneWindow是什么时候创建的&#xff1f; DectorView 是什么&#xff1f; DectorView 是什么时候创建的&#xf…

YAML在python中的基础使用

一、编写一个yaml配置文件 基础语法&#xff1a; 大小写敏感使用缩进表示层级不允许使用制表符\t,只允许使用空格缩进的空格数量不作要求,推荐使用2个空格字符相同层级的元素应保持相同的缩进 一个常见的yaml文件示例&#xff1a; # 当前yaml文档使用到注释、变量、类对象 …

Xilinx FPGA 权威书籍指南 基于Vivado 2018 集成开发环境

ff4889i Verilog数字系统设计教程_夏宇闻 深入浅出玩转FPGA_吴厚航 《深入浅出玩转FPGA》视频教程&#xff1a;35课时 FPGA项目实例资料合集 FPGA从入门到精通.实战篇 数字逻辑基础与Verilog设计 原书第3版 ,斯蒂芬布朗 Xilinx FPGA 权威书籍指南 基于Vivado 2018 集成开…