什么是正确的docker-compose yml来设置selenium hub node-chrome的maxSessions和maxInstances

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是正确的docker-compose yml来设置selenium hub node-chrome的maxSessions和maxInstances相关的知识,希望对你有一定的参考价值。

作为docker-selenium,yml和docker组成的新手,有人可以告诉我如何在docker compose中正确设置max hub session和node essions / instances吗?我目前正在使用这个yml: -

version: '2'
services:
  chrome:
    image: selenium/node-chrome:3.10.0-argon
    volumes:
       - /dev/shm:/dev/shm
    depends_on:
       - hub
    environment:
       - NODE_MAX_INSTANCES=10
       - NODE_MAX_SESSION=10
       - HUB_HOST=hub

  hub:
    image: selenium/hub:3.10.0-argon
    ports:
      - "4444:4444"
    environment:
      - GRID_MAX_SESSION=10

,这是对docker-selenium readme的vanilla示例的一个小修改我希望能够在hub和node docker实例中正确设置会话和实例的数量。

但是,当我检查容器时,使用了默认设置: -

 "NODE_MAX_INSTANCES=1",
 "NODE_MAX_SESSION=1",

在节点上: -

 "GRID_MAX_SESSION=5",

在集线器上。我怎样才能解决这个问题?我真的不想为我想要运行的每5个chromedriver实例启动一个集线器。我应该能够在每个节点挤出几个chromedriver实例,每个集群可能有50多个实例。

答案

docker-selenium community的帮助下想出了这一点。正确的yml应该是: -

version: '2'
services:
  chrome:
    image: selenium/node-chrome:3.10.0-argon
    volumes:
       - /dev/shm:/dev/shm
    depends_on:
       - hub
    environment:
       NODE_MAX_INSTANCES: 10
       NODE_MAX_SESSION: 10
       HUB_HOST: hub

  hub:
    image: selenium/hub:3.10.0-argon
    ports:
      - "4444:4444"
    environment:
      GRID_MAX_SESSION: 10

以上是关于什么是正确的docker-compose yml来设置selenium hub node-chrome的maxSessions和maxInstances的主要内容,如果未能解决你的问题,请参考以下文章

Docker-Compose.yml配置讲解

Dockerfile 和 docker-compose.yml的区别

docker-compose安装开发环境

DOCKER学习_018:Docker-Compose文件简介

在docker-compose.yml中为自己的mantained docker注册表写什么

Docker:docker-compose 应用