当前位置: 首页 > news >正文

网站信息备案查询淘宝网站运营的工作怎么做

网站信息备案查询,淘宝网站运营的工作怎么做,做网站的相关协议,响应式网站设计建设制作#x1f300; 一个中大型ROS项目常需要各个人员分别完成特定的功能#xff0c;而后再组合部署#xff0c;而各人员完成的功能常常依赖于一定的环境#xff0c;而我们很难确保这些环境之间不会相互冲突#xff0c;特别是涉及深度学习环境时。这就给团队项目的部署落地带来了… 一个中大型ROS项目常需要各个人员分别完成特定的功能而后再组合部署而各人员完成的功能常常依赖于一定的环境而我们很难确保这些环境之间不会相互冲突特别是涉及深度学习环境时。这就给团队项目的部署落地带来了极大的困难。虽然类似于conda这样的工具可以弥补一部分的不足但是对于项目部署而言还是不足的。 现在就针对上述的问题提出一种基于docker的ROS2通信解决方案其中会涉及docker network和docker compose等内容。容器与宿主机的ROS2版本LTS版(foxy/humble/…)都行。 01前情说明 首先有以下几点说明 (1) 宿主系统是基于ubuntu系统系统的架构x86_64或arm均可使用的是NVIDIA显卡且系统内已安装相应的显卡驱动。 (2) 宿主机和容器的架构(x86_64/arm64)保持一致。 (3) 如果宿主机开了VPN先关掉避免干扰。 为了讲解的方便假设我们有以下环境 (1) 宿主系统是ubuntu20.04架构是x86_64安装了ros foxy显卡是NVIDIA GTX 1650且显卡驱动可用。 (2) 宿主系统内docker和docker compose都可以正常使用。 (3) 有一个docker镜像(假设叫做image:latest)镜像环境是ubuntu22.04架构也是x86_64安装了ros humble。 02创建docker compose文件 第一步编写一个docker compose文件用以从镜像创建容器。这种方式会比使用docker run好些因为它能够把容器的参数写到文件里还能联调多个容器的关系对于多容器组合的项目开发比较友好。并且我建议如果你只有一个docker容器那也使用docker compose这样相对于docker run的命令行方式更容易维护。 mkdir project cd project touch project.yml然后编写project.yml的内容示例如下。这里之所有没用device:来挂载摄像头、激光雷达等外设那是因为这些外设的驱动节点(传感器数据发布节点)放在宿主机中更好容器只要订阅这些节点发布的话题进行处理即可。另外ROS_DOMAIN_ID要一样才能通信默认为0。 # 多对多自由 services:c1: # 服务名称(一个服务对应一个容器),自己取名即可container_name: c1 # 容器名称image: image:latest # 镜像名称working_dir: [your_workdir_path1] # 工作目录,比如/home/zhangsanshm_size: [your_share_memory_size] # 共享内存大小,比如4Gruntime: nvidia environment:- NVIDIA_VISIBLE_DEVICESall- DISPLAY${DISPLAY} # 设置DISPLAY环境变量 volumes:- [your_source_path1]:[your_target_path1] # 挂载项目目录- /dev/dri:/dev/dri # 挂载 GPU 设备- /tmp/.X11-unix:/tmp/.X11-unix:rw # 挂载 X11 Unix 套接字- ${HOME}/.Xauthority:/root/.Xauthority:rw # 挂载 X11 认证文件networks:- [network_name] # 共享网络名称比如ros_networkstdin_open: true # 相当于 -itty: true # 相当于 -tc2: # 服务名称(一个服务对应一个容器),自己取名即可container_name: c2 # 容器名称image: image:latest # 镜像名称working_dir: [your_workdir_path2] # 工作目录,比如/home/lisishm_size: [your_share_memory_size] # 共享内存大小,比如4Gruntime: nvidia environment:- NVIDIA_VISIBLE_DEVICESall- DISPLAY${DISPLAY} # 设置DISPLAY环境变量 volumes:- [your_source_path2]:[your_target_path2] # 挂载项目目录- /dev/dri:/dev/dri # 挂载 GPU 设备- /tmp/.X11-unix:/tmp/.X11-unix:rw # 挂载 X11 Unix 套接字- ${HOME}/.Xauthority:/root/.Xauthority:rw # 挂载 X11 认证文件networks:- [network_name] # 共享网络名称比如ros_networkstdin_open: true # 相当于 -itty: true # 相当于 -tnetworks: # 如果没有名称为ros_network的网络会自己创建一个。[network_name]:name: [network_name]driver: bridge03启动docker compose服务 开放X11服务(这样容器中的窗口就可以显示出来)并从project.yml文件启动docker容器。 xhost docker-compose -f project.yml up接着你可以查看网络信息确认是否共享上了 docker network ls你会看这样的信息 NETWORK ID NAME DRIVER SCOPE ecb8bca83c79 bridge bridge local 0e489127c701 host host local #这个是你宿主机的网络 fad86f998533 none null local 65b64309ebc2 ros_network bridge local #这个是你刚才创建的共享网络进一步查看共享网络信息 docker network inspect ros_network 你会看到这样的输出 # c1和c2之间的ROS2节点在ros_network子网中通信 # 容器ROS2节点通过把数据转发给ros_network网关网关再转接给host实现与宿主机ROS2节点通信 [{Name: ros_network,Id: 65b64309ebc2df88cd05c3a1fb33635ab4818fd6d2022ce028ad25ef22f2e0ef,Created: 2025-01-11T20:20:06.63280073508:00,Scope: local,Driver: bridge,EnableIPv6: false,IPAM: {Driver: default,Options: {},Config: [{Subnet: 172.18.0.0/16, # 子网Gateway: 172.18.0.1 # 网关}]},Internal: false,Attachable: false,Ingress: false,ConfigFrom: {Network: },ConfigOnly: false,Containers: {79ba2ce2e7914e02e9c36828eb40c343c5abe5f3ca43f2c61b304b91f8cd8de6: {Name: c1,EndpointID: f3956bf172423f84b4e2bf0d55d9c1149b9135dcc32cfc6d01c6770b86a0015d,MacAddress: 02:42:ac:12:00:03,IPv4Address: 172.18.0.3/16, # c1的ipIPv6Address: },d02027c00ae82e6589dd4690fb7f69974de9d867958f17ced17f3babe0c7527b: {Name: c2,EndpointID: 50b4abf51ee3f4b118b99813b061830a2cf2858ecffa4b2c6147849e378fe8b7,MacAddress: 02:42:ac:12:00:02,IPv4Address: 172.18.0.2/16, #c2的ipIPv6Address: }},Options: {},Labels: {}} ]04ROS2通信测试 另开两个终端分别在终端内运行以下命令进入容器(你可以开多个) docker exec -it c1 /bin/bash # 第一个终端(可以开多个) docker exec -it c2 /bin/bash # 第二个终端(可以开多个)启动以下节点 # 在宿主机中 ros2 run turtlesim turtlesim_node # 在c1容器中 ros2 run demo_nodes_cpp talker # [INFO] [1736647116.948458682] [talker]: Publishing: Hello World: 1 # 在c2容器中 ros2 run demo_nodes_cpp listener # [INFO] [1736647126.948946624] [listener]: I heard: [Hello World: 1]并分别在各环境中运行 ros2 node list如果所有环境中都输出了以下内容那就说明成功了。 /listener /talker /turtlesim05附录 5.1 安装docker compose # 从官方下载软件包(确保和自己机器的架构一致)https://github.com/docker/compose/releases # 假设下载了docker-compose-linux-x86_64到~/Downloads cd ~/Downloads # 改名 mv docker-compose-linux-x86_64 docker-compose # 移动到指定位置 sudo mv docker-compose /usr/local/bin # 赋予权限 sudo chmod x /usr/local/bin/docker-compose
http://www.tj-hxxt.cn/news/133884.html

相关文章:

  • 怎样免费做网站视频讲解skype在网站上怎么做链接
  • 长沙做模板网站广告线上推广方式
  • 台州椒江找人做网站安徽津城建设工程有限公司网站
  • 南宁网站建设咨q479185700上墙湖南张家界
  • 加强学科网站建设哈尔滨个人建站模板
  • 国家建设部举报网站有哪些可以做1元夺宝的网站
  • 建立企业网站流程响应式布局代码
  • 南宁网站建设外包wordpress插件安装目录
  • 网站负责人查询php网站建设是什么意思
  • 青岛php网站建设国外网络推广哪家公司好
  • 自助建站免费平台企业信息系统规划的含义及任务
  • 注册网站页面跳转错误wordpress 好用的编辑器
  • 提示网站建设中四会城乡建设局网站
  • 东三省网站建设公司wordpress 首页模版
  • 建一个网站难不难服务好的南京网站建设
  • 专做老酒的网站济南网站建设行知科技不错
  • 网站建设360搜索引擎广告图片
  • 大型网站系统图wordpress 做一个视频站
  • 关于网站备案前置审批的相关说明 吉林一站式服务广告语
  • 北京网站设计公司哪儿济南兴田德润简介网站设计与推广
  • 网站建设与管理适合女生学吗江苏省建设厅 标准化网站
  • 协会网站方案广州腾虎网络网站建设熊掌号
  • 外贸网站建设模式株洲网站优化找哪家
  • 怎么创建网站赚钱dede网站怎么做404页面
  • 怎么在云服务器上搭建网站t恤在线制作网站
  • 网站建设分为多少模块我市建设车辆违章查询网站 病句
  • 网站建设所需要的软件十大难进的互联网公司
  • 郑州网站建设企业推荐我有云服务器如何建站
  • 建设网站手机版怎么看一级还是二级域名
  • 重庆官方网站建设导入表格数据做地图网站