我想使用chrome-standalone docker镜像来运行我的前端测试:
这实际上与Linux机器上的主机network_mode(--net =" host")一起正常工作,但在Windows上我继续得到" localhost拒绝连接"。 / p>
首先,我开始创建一个新的Hyper-V虚拟机,其中一个自定义虚拟交换机连接到外部网络并在其中运行容器(powershell命令为admin):
$vmSwitch = Get-VMSwitch -Name 'Custom Virtual Switch'
$net = Get-NetAdapter -Name 'Ethernet'
New-VMSwitch -Name "Custom Virtual Switch" -AllowManagementOS $True -NetAdapterName $net.Name
docker-machine create -d hyperv --hyperv-virtual-switch "Custom Virtual Switch" -hyperv-memory 1024 --engine-insecure-registry docker.cirb.lan ChromeDriverVM
& "C:\Program Files\Docker\Docker\Resources\bin\docker-machine.exe" env ChromeDriverVM | Invoke-Expression
docker run -d -P --network="host" -v /dev/shm:/dev/shm selenium/standalone-chrome
接下来我尝试调用外部物理机IP,这是第一次调用,但之后我被重定向到localhost,它不再工作了。
我还尝试添加" - add-host LOCAL_IP:localhost"。
最后使用了docker.for.win.localhost名称,同样的问题仍然无法调用物理主机。
使用链接不会为我做,我将不得不更改一些我无法更改的模块。