繁体   English   中英

Docker 容器连接到网络,网络检查显示没有容器

[英]Docker Container Attached to Network, Network Inspect Shows No Containers

我只是想将笔记本电脑上 Ubuntu 22.04 VM 的 ROS2 节点连接到另一台运行 Ubuntu 18.04 的机器上的另一个 ROS2 节点。 理想情况下,我在第二台机器上只有 Docker(第一台机器运行一个永远不会改变的普通节点),但我一直在尝试在每台机器上使用一个单独的容器。

这是我正在做的以及检查时看到的内容:

(从 VM 1 ssh 进入机器 2。)

A: 从机器 2 启动.network。

sudo docker network create -d overlay --attachable my-attachable-ovrlay

B:启动容器1。

sudo docker run -it --rm test1

C:成功将容器 1 附加到 .network。

sudo docker network connect dwgyau64pvpenxoj2edu4liqu bold_murdock

D:确认容器lists.network。

sudo docker inspect -f '{{range $key, $value := .NetworkSettings.Networks}}{{$key}} {{end}}' bold_murdock

印刷:

bridge my-attachable-ovrlay

E:检查.network 以查看容器。

sudo docker network inspect my-attachable-ovrlay

打印(除其他外):

"Containers": null,

我是 Docker AND.networking 的新手,所以我可能会遗漏一些重要的东西,但我已经尝试了我在网上找到的所有标准建议,包括禁用我的防火墙,在两台机器上使用ufw allow打开大量端口,确保节点是活跃的等等等等等等等等等等。

我尝试从机器 2 加入 .network 并且成功了,并且在使用 .network inspect 时显示了容器。 但是当我这样做时,机器 1 只是拒绝连接到.network。 F:在这种情况下它会报错。

sudo docker network connect dwgyau64pvpenxoj2edu4liqu objective_mendel

印刷:

Error response from daemon: attaching to network failed, make sure your network options are correct and check manager logs: context deadline exceeded

此外,在尝试任何 docker.networking 之前,我已经尝试从 VM1 直接 ping 到机器 2,这两种方式都有效。 我曾尝试使用 .netcat 在端口 1234(根据此资源的随机端口)上打开一个老式聊天 window,并且只能以一种方式工作。 我可以通过两种方式进行通信,但只有当机器 1 发送 initial.netcat 请求并且机器 2 侦听时。 当机器 2 发送请求并且 1 侦听时,没有任何反应。

我一直在努力让这个工作 3 个星期。 我知道这是愚蠢的事情,我就是知道。 任何建议将不胜感激。 请像我对.networking一无所知一样解释一下,因为我即将这样做。

编辑:我将图像(仍然超链接)转换为代码块。

如果两台 PC 在同一个 LAN 上,您可以完全跳过 whole.network 配置并使用 ROS2 自动发现。

例如

PC1:

docker run -it --rm --net=host -v /dev/shm:/dev/shm osrf/ros:foxy-desktop
    export ROS_DOMAIN_ID=1
    ros2 run demo_nodes_py talker

PC2:

docker run -it --rm --net=host -v /dev/shm:/dev/shm osrf/ros:foxy-desktop
    export ROS_DOMAIN_ID=1
    ros2 run demo_nodes_py listener

如果PC不在同一个网络上,我通常使用ZeroTier在PC1、PC2和PC(N)之间创建一个虚拟局域网,然后重复上面的例子。

Bruh 路由器设置为 1969。当我们通过连接到 inte.net 15 秒更新时间,然后断开连接时,它开始工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM