Selenium Grid 平台的搭建

Selenium-Hub 的 Docker 容器安装配置

官方对低版本的 hub 镜像选择放任不管,我们尽量采用高一点版本的镜像,我们决定安装这个 madehao 版本的 hub

  • 拉取 selenium-hub 的镜像

    # 拉取 selenium-hub
    docker pull madehao/selenium-hub
    
    # 查看拉取到的镜像
    docker images
    
  • 由 hub 生成容器,我配置的映射关系为服务器地址 /home/selenium-hub=>容器中地址 /var/selenium-hub服务器端口 5555=>容器中端口 4444,这个服务器地址指定和端口指定可以依据项目要求来指定

    这个容器取名 selenium-hub

    # hub 生成容器
    docker run --name selenium-hub -p 5555:4444 -v /home/selenium-hub:/var/selenium-hub madehao/selenium-hub
    
    # 在火狐浏览器中输入网址 localhost:5555/grid/console 可以发现只有一个空的控制台,这是因为此 grid 控制台还没有配置 node 节点
    

Selenium-Node 的 Docker 容器安装配置

为了项目方便我这里安装了两个 chrome 的节点,一个 79 版的 chrome 节点,一个 71 版本的 chrome 节点,我建议采用新一点,两个都装也没啥问题,下面我以 79 的举例来配置安装。哪些 node 对应着哪些版本这个可以进入 Docker Hub 网站自己去搜查日期节点

  • 安装 79 版的 chrome 节点镜像

    # 拉取 79 版 selenium-node-chrome
    docker pull madehao/selenium-node-chrome
    
    # 查看镜像是否被拉下来了
    docker images
    
  • node 镜像生成容器

    映射关系是服务器地址 /home/node-chrome=>容器中地址 /var/node-chrome服务器端口 5901=>容器中端口 5900,当然这个服务器的地址和端口具体该选择什么,这个得项目上提供给什么就去用什么,这个映射是我本地自己配置的

    注意,生成此 node 容器中--link连接的是 selenium-hub 容器的名字,上面我生成 selenium-hub 容器名字是 selenium-hub,这样才能实现将 node 成功挂载到指定的 hub 中

    # 由 node 生成容器
    docker run --name node-chrome --link selenium-hub:hub --shm-size=512m -p 5901:5900 -v /home/node-chrome:/var/node-chrome madehao/selenium-node-chrome
    
  • 打开浏览器,输入 localhost:5555/grid/console,这样我们就可以看到 grid 控制台中有 79 版的 chrome node 节点了!

发布了124 篇原创文章 · 获赞 40 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/abcnull/article/details/103835464