我在 Debian 上的单个主机上运行 docker。主机为我的家庭网络运行各种不同的服务,例如监控软件、家庭自动化、日志聚合等。
我一开始只将一个物理网络适配器连接到系统,并创建了一些容器。后来,我添加了辅助 NIC,其想法是在仅用于 ssh 访问 docker 主机eth1时移动所有 docker 容器。eth0
版本信息
20.10.04.19.0-13-amd64241-7~deb10u5 amd64overlay2Docker 目前在 NIC 上发布所有容器,但我找不到一种干净简单的方法来限制仅公开服务eth1。这与我使用主机、桥接器还是自定义网络无关。
daemon.json- 设置“ip”选项。对我来说,这看起来是最明显的解决方案,但它似乎没有效果,在重新启动和服务重新启动后,两个网络接口上的服务仍然可用。我什至在引入“ip”选项后从头开始重新创建了一个容器,也没有效果。目前,配置看起来非常简单:{
"ip" : "192.168.1.10",
"graph": "/srv/docker"
}
Run Code Online (Sandbox Code Playgroud)
eth0在防火墙级别阻止访问,p22 除外。这会起作用,但对我来说感觉像是黑客。一定有一种(可能很简单)的方法可以将主机网络从 更改0.0.0.0为eth1的特定 IP 地址,但我一生都无法找到方法。