-
-
Notifications
You must be signed in to change notification settings - Fork 2.5k
/
docker-compose-v3-video-upload.yml
120 lines (113 loc) · 4.24 KB
/
docker-compose-v3-video-upload.yml
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
# To execute this docker compose yml file use `docker compose -f docker-compose-v3-video-upload.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-upload.yml down`
# ${variable_pattern} get value from .env in the same directory
version: "3"
services:
# Start a local FTP server to demonstrate video upload with RCLONE (https://github.com/delfer/docker-alpine-ftp-server)
ftp_server:
image: delfer/alpine-ftp-server:latest
container_name: ftp_server
environment:
- USERS=seluser|selenium.dev
volumes:
# Mount the local directory `/tmp/upload` to the FTP server's `/ftp/seluser` directory to check out the uploaded videos
- /tmp/upload:/ftp/seluser
command: ["/bin/sh", "-c", "/sbin/tini -- /bin/start_vsftpd.sh && tail -f /dev/null"]
stop_grace_period: 30s
chrome:
image: selenium/node-chrome:4.27.0-20241127
shm_size: 2gb
depends_on:
- selenium-hub
environment:
- SE_EVENT_BUS_HOST=selenium-hub
- SE_EVENT_BUS_PUBLISH_PORT=4442
- SE_EVENT_BUS_SUBSCRIBE_PORT=4443
- SE_ENABLE_TRACING=false
edge:
image: selenium/node-edge:4.27.0-20241127
shm_size: 2gb
depends_on:
- selenium-hub
environment:
- SE_EVENT_BUS_HOST=selenium-hub
- SE_EVENT_BUS_PUBLISH_PORT=4442
- SE_EVENT_BUS_SUBSCRIBE_PORT=4443
- SE_ENABLE_TRACING=false
firefox:
image: selenium/node-firefox:4.27.0-20241127
shm_size: 2gb
depends_on:
- selenium-hub
environment:
- SE_EVENT_BUS_HOST=selenium-hub
- SE_EVENT_BUS_PUBLISH_PORT=4442
- SE_EVENT_BUS_SUBSCRIBE_PORT=4443
- SE_ENABLE_TRACING=false
chrome_video:
image: selenium/video:ffmpeg-7.1-20241127
depends_on:
- chrome
environment:
- DISPLAY_CONTAINER_NAME=chrome
- SE_NODE_GRID_URL=http://selenium-hub:4444
- SE_VIDEO_FILE_NAME=auto
- SE_VIDEO_UPLOAD_ENABLED=true
# Remote name and destination path to upload
- SE_UPLOAD_DESTINATION_PREFIX=myftp://ftp/seluser
# All configs required for RCLONE to upload to remote name myftp
- RCLONE_CONFIG_MYFTP_TYPE=ftp
- RCLONE_CONFIG_MYFTP_HOST=ftp_server
- RCLONE_CONFIG_MYFTP_PORT=21
- RCLONE_CONFIG_MYFTP_USER=seluser
# Password encrypted using command: rclone obscure <your_password>
- RCLONE_CONFIG_MYFTP_PASS=KkK8RsUIba-MMTBUSnuYIdAKvcnFyLl2pdhQig
- RCLONE_CONFIG_MYFTP_FTP_CONCURRENCY=10
edge_video:
image: selenium/video:ffmpeg-7.1-20241127
depends_on:
- edge
environment:
- DISPLAY_CONTAINER_NAME=edge
- SE_NODE_GRID_URL=http://selenium-hub:4444
- SE_VIDEO_FILE_NAME=auto
- SE_VIDEO_UPLOAD_ENABLED=true
# Remote name and destination path to upload
- SE_UPLOAD_DESTINATION_PREFIX=myftp://ftp/seluser
# All configs required for RCLONE to upload to remote name myftp
- RCLONE_CONFIG_MYFTP_TYPE=ftp
- RCLONE_CONFIG_MYFTP_HOST=ftp_server
- RCLONE_CONFIG_MYFTP_PORT=21
- RCLONE_CONFIG_MYFTP_USER=seluser
# Password encrypted using command: rclone obscure <your_password>
- RCLONE_CONFIG_MYFTP_PASS=KkK8RsUIba-MMTBUSnuYIdAKvcnFyLl2pdhQig
- RCLONE_CONFIG_MYFTP_FTP_CONCURRENCY=10
firefox_video:
image: selenium/video:ffmpeg-7.1-20241127
depends_on:
- firefox
environment:
- DISPLAY_CONTAINER_NAME=firefox
- SE_NODE_GRID_URL=http://selenium-hub:4444
- SE_VIDEO_FILE_NAME=auto
- SE_VIDEO_UPLOAD_ENABLED=true
# Remote name and destination path to upload
- SE_UPLOAD_DESTINATION_PREFIX=myftp://ftp/seluser
# All configs required for RCLONE to upload to remote name myftp
- RCLONE_CONFIG_MYFTP_TYPE=ftp
- RCLONE_CONFIG_MYFTP_HOST=ftp_server
- RCLONE_CONFIG_MYFTP_PORT=21
- RCLONE_CONFIG_MYFTP_USER=seluser
# Password encrypted using command: rclone obscure <your_password>
- RCLONE_CONFIG_MYFTP_PASS=KkK8RsUIba-MMTBUSnuYIdAKvcnFyLl2pdhQig
- RCLONE_CONFIG_MYFTP_FTP_CONCURRENCY=10
selenium-hub:
image: selenium/hub:4.27.0-20241127
container_name: selenium-hub
environment:
- SE_ENABLE_TRACING=false
ports:
- "4442:4442"
- "4443:4443"
- "4444:4444"