最近试图在宿主机是windows,docker容器为ubuntu22.04的情况下进行多设备间的ros2通信,ros2通信的基础是需要两个设备之间能够ping通,经过一个星期的努力发现挺难的,记录下踩的坑,为后人节约时间。

1、windows不支持docker的host模式

The host networking driver only works on Linux hosts, and is not supported on Docker Desktop for Mac, Docker Desktop for Windows, or Docker EE for Windows Server.

官方解释链接:

https://docs.docker.com/network/drivers/host/

2、Docker Desktop for Windows没法ping linux容器,

Docker Desktop can’t route traffic to Linux containers. However if you’re a Windows user, you can ping the Windows containers.

官网解释链接:

https://docs.docker.com/desktop/networking/#per-container-ip-addressing-is-not-possible

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐