You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jun 30, 2021. It is now read-only.
Copy file name to clipboardExpand all lines: README.md
+20-16Lines changed: 20 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,18 +17,18 @@ Note SeleniumHQ/docker-selenium project is more useful for building selenium gri
17
17
18
18
### One-liner Install & Usage
19
19
20
-
In general: add `sudo` only if needed in your environment and `--privileged` if you really need it like when [Chrome crashes](https://github.com/elgalu/docker-selenium/issues/20) during your high gpu intensive tests.
20
+
In general: add `sudo` only if needed in your environment and `--privileged`or `-v /dev/shm:/dev/shm`if you really need it like when [Chrome crashes](https://github.com/elgalu/docker-selenium/issues/20) during your high gpu intensive tests.
21
21
22
-
docker run --privileged -p 4444:24444 -p 5920:25900 \
23
-
-e VNC_PASSWORD=hola elgalu/selenium:2.47.1g
22
+
docker run -p 4444:24444 -p 5920:25900 -v /dev/shm:/dev/shm \
23
+
-e VNC_PASSWORD=hola elgalu/selenium:2.47.1h
24
24
25
25
### Non-privileged
26
26
### Run
27
27
28
28
If your setup is correct, privileged mode and sudo should not be necessary:
29
29
30
30
docker run --rm --name=ch -p=4444:24444 -p=5920:25900 \
31
-
elgalu/selenium:2.47.1g
31
+
elgalu/selenium:2.47.1h
32
32
33
33
Make sure `docker run` finishes with **selenium all done and ready for testing** else you won't be able to start your tests. To perform this check programatically please use this command where `ch` is the name of the container:
34
34
@@ -93,7 +93,7 @@ You can launch a grid only container via environment variables:
The important part above is `-e CHROME=false -e FIREFOX=false` which tells the docker image not run run default chorme and firefox nodes turning the container into a grid-only one.
99
99
@@ -109,13 +109,17 @@ You can lunch a node only container via environment variables:
109
109
-p 25550:25550 -p 25551:25551 \
110
110
-e GRID=false -e CHROME=true -e FIREFOX=true \
111
111
-v $(pwd)/videos:/videos \
112
-
elgalu/selenium:2.47.1g
112
+
elgalu/selenium:2.47.1h
113
113
114
114
The important part above is `-e GRID=false` which tells the container to be a node-only node, this this case with 2 browsers `-e CHROME=true -e FIREFOX=true` but could be just 1.
115
115
116
116
## Chrome crashed
117
117
118
-
If your tests crashes in Chrome you may need to increase shm size:
118
+
If your tests crashes in Chrome you may need to increase shm size or simply start your container by sharing `-v /dev/shm:/dev/shm`
119
+
120
+
docker run ... -v /dev/shm:/dev/shm
121
+
122
+
Alternatively you can increase it inside the container:
119
123
120
124
1. start docker in privileged mode: `docker run --privileged`
121
125
2. increase shm size from default 64mb to something bigger:
@@ -146,9 +150,9 @@ There are also additional steps you can take to ensure you're using the correct
146
150
147
151
You can simply verify that image id is indeed the correct one.
if docker inspect -f='{{.Id}}' elgalu/selenium:2.47.1g |grep ${IMGID} &> /dev/null; then
153
+
# e.g. full image id for tag 2.47.1h
154
+
export IMGID=TBD
155
+
if docker inspect -f='{{.Id}}' elgalu/selenium:2.47.1h |grep ${IMGID} &> /dev/null; then
152
156
echo "Image ID tested ok"
153
157
else
154
158
echo "Image ID doesn't match"
@@ -158,8 +162,8 @@ You can simply verify that image id is indeed the correct one.
158
162
159
163
Given docker.io currently allows to push the same tag image twice this represent a security concern but since docker >= 1.6.2 is possible to fetch the digest sha256 instead of the tag so you can be sure you're using the exact same docker image every time:
You can find all digests sha256 and image ids per tag in the [CHANGELOG](./CHANGELOG.md) so as of now you just need to trust the sha256 in the CHANGELOG. Bullet proof is to fork this project and build the images yourself if security is a big concern.
@@ -287,7 +291,7 @@ If you git clone this repo locally, i.e. cd into where the Dockerfile is, you ca
287
291
288
292
If you prefer to download the final built image from docker you can pull it, personally I always prefer to build them manually except for the base images like Ubuntu 14.04.2:
0 commit comments