[docker]关于在使用mac Version 12.6 Apple M1 Pro下载镜像selenium/standalone-chrome无法使用的问题
引言
当我们需要使用selenium-grid来实现分布式时,遇到了一个问题,致使我们无法完成这个功能.
问题描述
记录使用的设备:
操作系统: macOS
系统版本: 12.6
芯片: Apple M1 Pro
记录时间: 2023年6月25日
在安装完docker后,拉取镜像selenium/standalone-chrome后,启动镜像
docker run --rm --cap-add=SYS_ADMIN -p 4444:4444 -p 5900:5900 -e ENABLE_VNC=true selenoid/vnc:chrome_99.0
本地编写代码进行连接测试
require "rubygems"
require "selenium-webdriver"
# 本地配置环境
# driver = Selenium::WebDriver.for :chrome
# 配置远程连接环境
# options = Selenium::WebDriver::Chrome::Options.new
# options.add_argument('--headless')
# options.add_argument('--disable-gpu')
# options.add_argument('--no-sandbox')
# options.add_argument('--disable-dev-shm-usage')
#
driver = Selenium::WebDriver.for :remote, url: "http://127.0.0.1:4444", desired_capabilities: :chrome
driver.navigate.to "https://www.baidu.com/"
sleep 3
element = driver.find_element(:id, 'kw')
element.send_keys "Hello WebDriver!"
sleep 3
driver.find_element(:id, 'su').click
sleep 3
puts driver.title
driver.quit
运行结果
问题原因
在github上面我看到了相似的问题,似乎现在时不只是chrome, 具体可以去看
解决方案
方案一: 目前在window和linux上没有这个问题,所以条件允许,你可以尝试更换设置,或者购买云服务器.
方案二: 你可以不使用chrome,去使用firefox, 在docker上拉取镜像selenium/standalone-firefox,然后进行操作就好了
总结
目前还没法在此版本的mac上去使用chrome的docker镜像,大家如果有更好的方案欢迎评论区留言, 感谢🙏