The Docker image is best for CLI-oriented and compatibility-runtime use.
It is not the primary way to use the v4 desktop workflow.
If you want the full v4 operator path, use the desktop app from source or packaged builds. Use Docker when you want:
- a disposable CLI runtime
- a quick scanner container
- a CI job that runs the compatibility scanner
docker pull rothackers/wshawk:latestThe image entrypoint is wshawk, so the simplest run looks like:
docker run --rm rothackers/wshawk wss://target.example/wsShow help:
docker run --rm rothackers/wshawk --helpBecause the container entrypoint is wshawk, non-default commands need --entrypoint.
docker run --rm --entrypoint wshawk-defensive rothackers/wshawk wss://target.example/wsdocker run --rm -it --entrypoint wshawk-interactive rothackers/wshawkdocker run --rm --entrypoint wshawk-advanced rothackers/wshawk wss://target.example/ws --fulldocker build -t rothackers/wshawk:latest .Then run:
docker run --rm rothackers/wshawk:latest --helpThe default reporting directory is ./reports inside the container workdir, which maps naturally to /app/reports.
mkdir -p reports
docker run --rm \
-v "$(pwd)/reports:/app/reports" \
rothackers/wshawk \
wss://target.example/wsUse actual WSHawk config environment overrides rather than made-up container variables.
Example:
docker run --rm \
-e PYTHONUNBUFFERED=1 \
-e WSHAWK_TIMEOUT=30 \
rothackers/wshawk \
wss://target.example/wsThe image is primarily a CLI runtime. If you need browser-assisted features, treat that as a custom container concern.
Practical note:
- the Python package path is there
- the base image is not intended to be a polished desktop or full browser lab image
- if you need Chromium for browser-assisted flows, build a derived image and install it during image build
Example pattern:
FROM rothackers/wshawk:latest
RUN python -m pip install playwright && \
playwright install chromiumThe repository includes a docker-compose.yml, but it is better treated as a convenience shell setup than as the primary validation path for v4 features.
For reproducible validation, prefer the local apps under:
validation/full_stack_realtime_saas/validation/socketio_saas/validation/graphql_subscriptions_lab/
Those targets are designed for current v4 workflows.
Do not expect the Docker image to replace:
- the desktop app
- browser companion pairing
- local packaged desktop behavior
- the richest project-backed evidence workflow
Those are better served by the desktop runtime on the host.