使用 puppeteer(本地运行)从 docker 容器访问无外设 chrome 实例时,本地主机连接被拒绝



我在docker容器中运行无头chrome,并通过puppeteer访问它,通过使用browerWSEndpoint在本地运行它。这部分工作正常。建立连接后,我尝试使用该实例转到本地主机:端口,但失败并出现以下错误:

Error: net::ERR_CONNECTION_REFUSED at http://localhost:port/
at navigate (path_to/node_app/puppet/node_modules/puppeteer/lib/Page.js:521:37)
at anonymous
at process._tickCallback (internal/process/next_tick.js:188:7)

木偶师版本:^1.2

平台/操作系统版本:我的木偶器在我的本地机器上运行,这是MacOS 10.13.4,码头工人容器是linux。

节点.js版本:v8.11.2

我使用 https://github.com/skalfyfan/dockerized-puppeteer 在我的容器中设置无头铬。(注意:没有使用应用程序文件夹,而只使用chrome( 使用傀儡器连接到此 chrome 实例。 已尝试使用以下方法打开本地主机: await page.goto("http://localhost:port", {waitUntil: 'networkidle0'}(;

预期: 连接已建立,码头工人容器停止。

实际:

Error: net::ERR_CONNECTION_REFUSED at http://localhost:port/
at navigate (/node_app/puppet/node_modules/puppeteer/lib/Page.js:521:37)
at 
at process._tickCallback (internal/process/next_tick.js:188:7)

谢谢。

修复了它。我在终端上使用hostname -f来查找主机名并使用它代替本地主机。我认为从 docker 启动 chrome 实例时没有本地主机映射。

最新更新