Skip to content

Docker Compose

Both examples assume this layout:

Terminal window
mkdir -p /path/to/config /path/to/config/logs /path/to/config/video
# put browsers.json into /path/to/config

Both options follow the official Docker Compose documentation.

All services use bridge networking:

services:
websummoner:
network_mode: bridge
image: websummoner/websummoner:latest-release
volumes:
- "/path/to/config:/etc/websummoner"
- "/var/run/docker.sock:/var/run/docker.sock"
- "/path/to/config/video:/opt/websummoner/video"
- "/path/to/config/logs:/opt/websummoner/logs"
environment:
- OVERRIDE_VIDEO_OUTPUT_DIR=/path/to/config/video
command:
- -conf
- /etc/websummoner/browsers.json
- -video-output-dir
- /opt/websummoner/video
- -log-output-dir
- /opt/websummoner/logs
ports:
- "4444:4444"

When your application containers live in their own network, create it first (Docker networking guide):

Terminal window
docker network create websummoner

Then attach WebSummoner to it and pass -container-network so browser containers join the same network:

networks:
websummoner:
external: true
services:
websummoner:
networks:
websummoner:
image: websummoner/websummoner:latest-release
volumes:
- "/path/to/config:/etc/websummoner"
- "/var/run/docker.sock:/var/run/docker.sock"
- "/path/to/config/video:/opt/websummoner/video"
- "/path/to/config/logs:/opt/websummoner/logs"
environment:
- OVERRIDE_VIDEO_OUTPUT_DIR=/path/to/config/video
command:
- -conf
- /etc/websummoner/browsers.json
- -video-output-dir
- /opt/websummoner/video
- -log-output-dir
- /opt/websummoner/logs
- -container-network
- websummoner
ports:
- "4444:4444"