Windows下Docker主机网络容器服务访问
如果我使用主机网络运行docker容器(Windows下Docker主机网络容器服务访问,docker,networking,port,accessibility,host,Docker,Networking,Port,Accessibility,Host,如果我使用主机网络运行docker容器(--network host),对于容器中运行的任何服务,可以直接从主机访问其公开端口,对吗 在使用Windows下的主机网络运行docker容器之前,我一直这么认为-- ipaseth0显示我的容器ip地址是192.168.65.3 route | awk'/^default/{print$2}'给出了192.168.65.1 但是,我的主机的IP为10.66.xx.xx 即,容器IP地址和主机IP完全不同。不像他说的那样 无论如何,如果我在容器中运
--network host
),对于容器中运行的任何服务,可以直接从主机访问其公开端口,对吗
在使用Windows下的主机网络运行docker容器之前,我一直这么认为--
显示我的容器ip地址是ipaseth0
192.168.65.3
给出了route | awk'/^default/{print$2}'
192.168.65.1
- 但是,我的主机的IP为
10.66.xx.xx
--networkhost
),您不再需要将端口从容器映射到主机)
thx
Windows不支持主机网络:
主机
网络驱动程序仅在Linux主机上工作,在Docker Desktop for Mac、Docker Desktop for Windows或Docker EE for Windows Server上不受支持
我建议尝试使用-p
选项来运行docker
,因为Windows支持该选项
或者,一个论坛用户以桥接模式使用VirtualBox安装Linux,然后Linux可以使用主机网络。YMMV.Windows不支持主机网络:
主机
网络驱动程序仅在Linux主机上工作,在Docker Desktop for Mac、Docker Desktop for Windows或Docker EE for Windows Server上不受支持
我建议尝试使用-p
选项来运行docker
,因为Windows支持该选项
或者,一个论坛用户以桥接模式使用VirtualBox安装Linux,然后Linux可以使用主机网络。你是什么意思?我的错,删除了。你什么意思?我的错误,删除。
docker version
Client: Docker Engine - Community
Version: 19.03.8
API version: 1.40
Go version: go1.12.17
Git commit: afacb8b
Built: Wed Mar 11 01:23:10 2020
OS/Arch: windows/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.8
API version: 1.40 (minimum version 1.12)
Go version: go1.12.17
Git commit: afacb8b
Built: Wed Mar 11 01:29:16 2020
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.2.13
GitCommit: 7ad184331fa3e55e52b890ea95e65ba581ae3429
runc:
Version: 1.0.0-rc10
GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dd
docker-init:
Version: 0.18.0
GitCommit: fec3683