This repository provides a pre-configured Docker container for building Raspberry Pi Pico applications using the Pico SDK. It ensures a consistent, reproducible build environment both locally and in CI/CD workflows.
.
├── build.sh # Script to build binaries inside the Docker container
├── CMakeLists.txt # CMake project configuration
├── Dockerfile # Docker image definition for Pico SDK
├── pico-docker.c # Sample Pico application source file
├── pico_sdk_import.cmake # Pico SDK import configuration
├── raspberrypi-swd.cfg # OpenOCD SWD configuration
└── README.md # This documentationdocker build -t viralpatel9/pico-docker:master .docker push viralpatel9/pico-docker:masterUse the provided build.sh script to compile your Pico application within the Docker environment. Alternatively, build interactively:
docker run --rm -it \
-v /home/viral/git-repo/pico-docker:/workspace \
-w /workspace \
viralpatel9/pico-docker:master
# Inside the container:
mkdir build && cd build
cmake ..
make -j$(nproc)You can automate the build and release process using GitHub Actions. Refer to .github/workflows/build-pico.yml for the CI/CD configuration.
| Task | Command |
|---|---|
| Build Docker image | docker build -t viralpatel9/pico-docker:master . |
| Push Docker image | docker push viralpatel9/pico-docker:master |
| Build binary (script) | ./build.sh |
| Interactive build | Run container and build manually |
| CI/CD build | See .github/workflows/build-pico.yml |