This project includes a Docker workflow that will allow you to build a new firmware for your keyboard very easily without major changes to your primary operating system. This also ensures that when you clone the project and perform a build, you have the exact same environment as anyone else and the QMK build infrastructure. This makes it much easier for people to help you troubleshoot any issues you encounter.
The main prerequisite is a working
Acquire a local copy of the QMK's repository (including submodules):
git clone --recurse-submodules https://github.com/qmk/qmk_firmware.gitcd qmk_firmware
Run the following command to build a keymap:
util/docker_build.sh <keyboard>:<keymap># For example: util/docker_build.sh planck/rev6:default
This will compile the desired keyboard/keymap and leave the resulting
.bin file in the QMK directory for you to flash. If
:keymap is omitted, all keymaps are used. Note that the parameter format is the same as when building with
There is also support for building and flashing the keyboard straight from Docker by specifying the
target as well:
util/docker_build.sh keyboard:keymap:target# For example: util/docker_build.sh planck/rev6:default:flash
You can also start the script without any parameters, in which case it will ask you to input the build parameters one by one, which you may find easier to use:
util/docker_build.sh# Reads parameters as input (leave blank for all keyboards/keymaps)
!> Docker for Windows requires Hyper-V to be enabled. This means that it cannot work on versions of Windows which don't have Hyper-V, such as Windows 7, Windows 8 and Windows 10 Home.