๐Ÿ“ฆ SeleniumHQ / docker-selenium

๐Ÿ“„ docker-compose-v3-video-in-node.yml ยท 74 lines
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74# To execute this docker compose yml file use `docker compose -f docker-compose-v3-video-in-node.yml up`
# Add the `-d` flag at the end for detached execution
# To stop the execution, hit Ctrl+C, and then `docker compose -f docker-compose-v3-video-in-node.yml down`
services:
  chrome:
    deploy:
      mode: replicated
      replicas: 3
    image: selenium/node-chrome:4.39.0-20251212
    platform: linux/amd64
    shm_size: 2gb
    depends_on:
      - selenium-hub
    volumes:
      - /tmp/videos:/videos
    environment:
      - SE_EVENT_BUS_HOST=selenium-hub
      - SE_RECORD_VIDEO=true
      - SE_VIDEO_FILE_NAME=auto
      - SE_NODE_GRID_URL=http://selenium-hub:4444

  edge:
    deploy:
      mode: replicated
      replicas: 3
    image: selenium/node-edge:4.39.0-20251212
    platform: linux/amd64
    shm_size: 2gb
    depends_on:
      - selenium-hub
    volumes:
      - /tmp/videos:/videos
    environment:
      - SE_EVENT_BUS_HOST=selenium-hub
      - SE_RECORD_VIDEO=true
      - SE_VIDEO_FILE_NAME=auto
      - SE_NODE_GRID_URL=http://selenium-hub:4444

  firefox:
    deploy:
      mode: replicated
      replicas: 3
    image: selenium/node-firefox:4.39.0-20251212
    shm_size: 2gb
    depends_on:
      - selenium-hub
    volumes:
      - /tmp/videos:/videos
    environment:
      - SE_EVENT_BUS_HOST=selenium-hub
      - SE_RECORD_VIDEO=true
      - SE_VIDEO_FILE_NAME=auto
      - SE_NODE_GRID_URL=http://selenium-hub:4444

  selenium-hub:
    image: selenium/hub:4.39.0-20251212
    container_name: selenium-hub
    ports:
      - "4442:4442"
      - "4443:4443"
      - "4444:4444"

  # File browser to manage the videos from local volume
  file_browser:
    image: filebrowser/filebrowser:latest
    container_name: file_browser
    restart: always
    ports:
      - "8081:80"
    volumes:
      - /tmp/videos:/srv
    environment:
      - FB_NOAUTH=true