【问题标题】:Docker Networking with two interfaces具有两个接口的 Docker 网络
【发布时间】:2021-11-11 23:07:21
【问题描述】:

我正在尝试设置我的 docker 服务器,它有两个网络接口 eth0 连接到我的 lan 和 eth1 连接到我的 vpn 隧道的内部网络。现在我所有的容器都可以通过这两个接口使用。但是我想通过每个接口决定哪些容器可用。

我正在使用 docker-compose 来启动我的容器,并且我尝试创建一些 docker 网络并分配它们,但我无法以这种方式解决它。我还发现了一些关于 macvlan 网络的信息,但这对我来说似乎有点过分。所以我想知道是否有其他方法或者我可能配置错误?或者 macvlan 仍然是解决这个问题的最简单方法吗?(如果可能的话)

【问题讨论】:

  • 您提到了您的 docker-compose 文件,但您没有在问题中包含它,因此任何人都很难指出任何潜在的错误配置。
  • 我忘了包含它,但我认为它不是很重要,因为我在 docker 中创建网络并在我的 docker compose 文件中引用它们。像这样:<network_name>: external: true

标签: docker networking


【解决方案1】:

在进行了更多挖掘之后,我发现了另一种更容易设置的方法。我完全忘记了这个工作,但是您可以通过在绑定端口时提供接口的 IP 地址来指定端口需要绑定到哪个接口。
使用docker run时像这样:
-p 192.168.1.100:8080:80/tcp
或者在 docker compose 中像这样:

ports:
  - "192.168.1.100:8080:80/tcp"

【讨论】:

    猜你喜欢
    • 2017-03-30
    • 1970-01-01
    • 2022-08-19
    • 1970-01-01
    • 1970-01-01
    • 2017-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多