A hardened, multi-platform Docker image for running Robot Framework test automation across x64 and ARM architectures (including Apple Silicon). This image provides a secure, portable environment for test execution with built-in support for performance testing tools.
- Multi-Architecture Support: Runs seamlessly on x64, ARM, and Apple Silicon
- Hardened Security: Built on Docker's official hardened Python base image
- Pre-installed Tools:
- Robot Framework 7.x
- Modern Python 3.12 environment
- Alpine Linux-based for minimal footprint
- Flexible Execution: Run Robot tests or any custom command
- Optimized Dependencies: Pre-cached package installation for faster builds
docker run --rm -v $(pwd):/robot malovec/robot-runner:latest tests/suite.robotdocker run --rm -ti -e CMD=bash malovec/robot-runner:latestPython Libraries:
- Robot Framework 7.x
- Browser and SeleniumLibrary for web testing
- Appium Library for mobile testing
- Requests library for API testing
- All major Robot Framework ecosystem packages
System Tools:
- Node.js/npm packages for modern web testing
- Alpine Linux system dependencies
docker run --rm \
-v $(pwd):/robot \
malovec/robot-runner:latest \
--outputdir results tests/docker run --rm \
-v $(pwd):/robot \
malovec/robot-runner:latest \
--variable BROWSER:chrome \
--suite smoke_tests tests/suite.robotdocker run --rm \
-v $(pwd):/robot \
-e CMD=python \
malovec/robot-runner:latest \
my_script.py# Mount current directory and specific output directory
docker run --rm \
-v $(pwd)/tests:/robot/tests \
-v $(pwd)/results:/robot/results \
malovec/robot-runner:latest \
--outputdir /robot/results /robot/testsdocker run --rm \
-v $(pwd):/robot \
-e PYTHONPATH=/robot/lib \
-e ROBOT_OPTIONS="--loglevel DEBUG" \
malovec/robot-runner:latestversion: '3.8'
services:
robot-tests:
image: malovec/robot-runner:latest
volumes:
- ./tests:/robot/tests
- ./results:/robot/results
command: --outputdir /robot/results /robot/tests/smoke.robot# Build for both x64 and ARM
docker buildx build --platform linux/amd64,linux/arm64 \
-t malovec/robot-runner:latest \
--push .# Build with specific Python version
docker build --build-arg DHI_PYTHON_BUILD_TAG=3.11-alpine3.22-dev \
-t my-robot-runner:custom .- Built on Docker's hardened Python base image
- Non-root user execution support
- Minimal Alpine Linux base for reduced attack surface
- Regular security updates from upstream bases
- Python bytecode writing disabled (
PYTHONDONTWRITEBYTECODE=1)
The image uses a structured approach for dependencies:
requirements/
βββ apk.in # Alpine Linux packages
βββ npm.in # Node.js packages
βββ python.in # Python packages
This project is open source. Please check the respective licenses for included tools:
- Robot Framework: Apache License 2.0
- Python: Python Software Foundation License
- Docker Hub: malovec/robot-runner
- Robot Framework: robotframework.org
Built with β€οΈ for the Robot Framework community
