docker/README.md
This directory contains Docker configurations for various FastLED development workflows.
docker/unit-tests/)Ubuntu-based image for running C++ unit tests with clang and cmake.
Build:
cd docker/unit-tests
./build.sh build
Run tests:
./build.sh run
Interactive shell:
./build.sh shell
Direct Docker commands:
# From project root
docker build -f docker/unit-tests/Dockerfile -t fastled-unit-tests .
docker run --rm -v "$(pwd):/fastled" fastled-unit-tests bash -c "uv run test.py --cpp"
ci/docker_utils/)Docker images for hardware emulation:
Dockerfile.avr8js — AVR8JS simulator for Arduino Uno emulation (used by uno AVR8JS Test workflow).qemu_esp32*_test.yml workflows.See ci/docker_utils/README.md for detail.
Note: The PlatformIO cross-compilation Docker images (
niteris/fastled-compiler-*) that used to live here were decommissioned in #2812 — fbuild is now the default compile backend and does not have the PlatformIO self-poisoning behavior the compiler images were designed to work around.
.devcontainer/)Development container for VS Code with Python, QEMU, and build tools pre-installed.
Open the project in VS Code and select "Reopen in Container" when prompted.
| Use Case | Image |
|---|---|
| Run unit tests in clean environment | docker/unit-tests/ |
| Run AVR8JS / ESP32 qemu emulator | ci/docker_utils/ (driven by CI) |
| VS Code remote development | .devcontainer/ |
| Cross-compile for Arduino/ESP32/etc | Native — bash compile <board> (no Docker; fbuild backend). |