警告
您正在阅读的 ROS 2 文档版本已达到 EOL(生命周期结束),不再受官方支持。如果您想了解最新信息,请访问 Jazzy.
在 Docker 中运行 ROS 2 节点 [社区贡献]
在一个 docker 容器中运行两个节点
拉取带有 "foxy-desktop "标签的 ROS docker 镜像。
装卸工 拉绳 osrf/ros:foxy-desktop
以交互模式在容器中运行映像。
$ 装卸工 运行 -它 osrf/ros:foxy-desktop root@<container-id>:/#
你最好的朋友是 玫瑰2
命令行帮助。
root@<container-id>:/# 玫瑰2 --帮助
例如,列出所有已安装的软件包。
root@<container-id>:/# 玫瑰2 包 清单
(你 将 看看 a 清单 的 套餐)
例如,列出所有可执行文件:
root@<container-id>:/# 玫瑰2 包 可执行程序
(你 将 看看 a 清单 的 <package>; <可执行>;)
运行 2 个 C++ 节点的最小示例(1 个主题订阅者 听众
1 个专题出版商 话匣子
)从软件包 演示节点
在这个容器中:
玫瑰2 运行 演示节点 听众 及样品;
玫瑰2 运行 演示节点 话匣子
在两个独立的 docker 容器中运行两个节点
打开终端。以交互模式运行容器中的映像,并启动主题发布器(可执行 话匣子
从包装 演示节点
)与 玫瑰2 运行
:
装卸工 运行 -它 --rm osrf/ros:foxy-desktop 玫瑰2 运行 演示节点 话匣子
打开第二个终端。以交互模式运行容器中的映像,并启动主题订阅者(可执行 听众
从包装 演示节点
)与 玫瑰2 运行
:
装卸工 运行 -它 --rm osrf/ros:foxy-desktop 玫瑰2 运行 演示节点 听众
作为命令行调用的替代方法,您可以创建一个 docker-compose.yml
文件(此处为第 2 版),内容如下(最少):
版本: '2'
服务:
话匣子:
图像: osrf/ros:foxy-desktop
指挥部: ros2 run demo_nodes_cpp talker
听众:
图像: osrf/ros:foxy-desktop
指挥部: ros2 运行 demo_nodes_cpp 监听器
取决于:
- 话匣子
要运行容器,请调用 docker-compose 向上
在同一目录下。您可以使用 Ctrl+C
.