从docker容器

时间:2015-10-13 11:33:21

标签: python docker uwsgi wake-on-lan

我有一个运行python uwsgi app的docker容器。应用程序发送唤醒lan广播数据包以唤醒本地网络中的电脑。

没有使用docker(直接在服务器上使用普通的uwsgi应用程序),它可以正常工作,但是使用docker它将无法正常工作。

我暴露了端口9 / udp并将其绑定到主机系统的端口9上。

我在这里缺少什么?或者换句话说,如何将dock命令从docker容器发送到外部网络?

1 个答案:

答案 0 :(得分:2)

来自 docker 的 UDP 广播似乎没有被正确路由(可能只在容器本身中广播,而不是在主机上广播)。

您无法直接发送 UDP WoL 消息,因为您尝试控制的设备处于“离线”状态,它不会显示在路由器的 ARP 表中,因此无法传递直接消息。

>

您可以尝试设置 (CLI) --network host 或 (compose) network_mode: host

如果您认为这可能会危及安全(因为您的容器/主机网络更直接地“连接”)或以其他方式干扰您的容器;您可以创建/使用单独的“WoL”容器。