gpt4 book ai didi

docker - 让 docker 容器连接到网络设备

转载 作者:行者123 更新时间:2023-12-02 19:37:20 26 4
gpt4 key购买 nike

我正在尝试制作一些 docker 容器来容纳我的一些日常工具。但是我的很多工具都依赖于能够连接到设备(通过 wifi)来提取数据。

我一直在做研究,并且很困惑试图了解需要做什么(如果有的话)来支持这种情况。我知道通常 docker 容器是服务器而不是客户端。但我读过关于人们做相反的事情。

我试图弄清楚需要什么样的更改/配置才能做到这一点。

最佳答案

默认情况下,Docker 会在你的物理服务器上创建一个虚拟网络;例如docker0界面。这发生在 bridge模式,它允许此接口(interface)通过您的 eth0 连接到 Internet设备。 eth0是物理系统接口(interface);与您的本地和全局网络相关的所有内容都将通过 eth0物理接口(interface)。

如果你想在运行的 docker 容器中访问互联网或本地网络,你必须添加 nameserver根据您的物理系统 /etc/resolv.conf docker 守护进程启动期间的文件。这样,您通常可以使用物理系统访问的所有内容都可以使用 docker 容器访问。

还有一件事,您必须在启动 docker 容器时公开端口,以便它可以在 eth0 的帮助下从 docker 网络外部提取数据。界面。所有这些配置都在 iptables 的帮助下自动处理。 . Docker 将添加 iptables rules转发来自 docker0 的流量至eth0您的服务将完美运行。

示例

docker run -it --name "$container_name" -d -h "$host_name" -p 9080:9080 -p 1522:1522 "$image_name"

在上述情况下,我的应用程序正在从 $host_name 中提取数据。通过端口 1522 . -p 1522:1522表示它将向端口 1522 发送请求在物理机上,类似地,物理机会将此请求发送到同一 1522 上的网络托管机。港口。”

关于docker - 让 docker 容器连接到网络设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43465395/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com