Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Ruby中使用selenium远程连接时的读取超时_Ruby_Docker_Selenium_Selenium Webdriver_Docker Compose - Fatal编程技术网

在Ruby中使用selenium远程连接时的读取超时

在Ruby中使用selenium远程连接时的读取超时,ruby,docker,selenium,selenium-webdriver,docker-compose,Ruby,Docker,Selenium,Selenium Webdriver,Docker Compose,我想在另一台服务器上将selenium与Ruby on DockerCompose和chrome一起使用,但出现了一个错误。 以下是各种代码和错误 DockerCompose.yml 版本:“3” 服务: 红宝石: 建造: 上下文:。 dockerfile:RubyDockerFile 端口: - "3000:3000" tty:是的 铬: 图片:selenium/standalone chrome:4.0.0-beta-3-20210426 容器名称:chrome 卷数: -/dev/sh

我想在另一台服务器上将selenium与Ruby on DockerCompose和chrome一起使用,但出现了一个错误。
以下是各种代码和错误

  • DockerCompose.yml
版本:“3”
服务:
红宝石:
建造:
上下文:。
dockerfile:RubyDockerFile
端口:
- "3000:3000"
tty:是的
铬:
图片:selenium/standalone chrome:4.0.0-beta-3-20210426
容器名称:chrome
卷数:
-/dev/shm:/dev/shm
端口:
- 4444:4444
- 5900:5900
- 7900:7900
  • RubyDocker中的Ruby代码
driver=Selenium::WebDriver.for:remote,url:'http://chrome:4444,所需的功能::chrome
  • 错误
Net::ReadTimeout:Net::ReadTimeout与#
/usr/local/bundle/gems/rack-mini-profiler-2.3.1/lib/patches/net\u patches.rb:19:在“请求块中使用mini\u profiler”
/usr/local/bundle/gems/rack-mini-profiler-2.3.1/lib/mini_profiler/profiler_methods.rb:46:in'step'
/usr/local/bundle/gems/rack-mini-profiler-2.3.1/lib/patches/net\u patches.rb:18:“请求使用mini\u profiler”
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/http/default.rb:129:in'response_for'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/http/default.rb:82:在“请求”中
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/http/common.rb:64:in'call'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/bridge.rb:167:in'execute'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/bridge.rb:102:在“创建会话”中
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/bridge.rb:56:在“握手”中
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/driver.rb:39:in'initialize'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/common/driver.rb:58:in'new'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/common/driver.rb:58:in'for'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver.rb:88:in'for'
/耙:9:in‘块(2层)in’

如果延长超时时间,我现在可以连接了

client=Selenium::WebDriver::Remote::Http::Default.new
client.read_超时=180秒
driver=Selenium::WebDriver.for:remote,url:'http://chrome:4444,所需的_功能::chrome,:http_client=>client

页面加载超过60秒时会发生此错误。您的页面加载是否超过60秒?谢谢您的回复,我可以通过将超时设置为180秒而不是120秒来连接。非常感谢你的帮助。是的,就这些。