* Add a Docker build script * Add usage and error messages * Add -r to reads Thanks mechmerlin * Add keyboard:keymap form, improve script * Add target argument, change usage forms in script * Add check for more than 3 args in keyboard:keymap:target form * Change Docker base image to debian, use community repo This matches what qmk_compiler uses (https://github.com/qmk/qmk_compiler/blob/master/Dockerfile#L1). I've removed the maintainer as we now have a community build on Docker Hub (https://hub.docker.com/r/qmkfm/qmk_firmware). This Dockerfile will also be maintained by the community. * Change build command format to keyboard:keymap * Call make directly in container run command * Simplify script, remove 3-arg form * Add COPY to Dockerfile so images are usable in and of themselves Also change WORKDIR from /qmk to /qmk_firmware * Add USB pass-through for Linux and docker-machine hosts * Read directly into variables instead of array * Alphabetically sort dependencies in Dockerfile * Set executable bit on util/docker_build.sh * Update Docker docs * Add warning about Docker on Windows * Expand comment in docs * Check docker-machine exit code instead of string * Only match --help with whole arguments * Make script POSIX-compliant * Convert script indentation to tabs
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			529 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			529 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
FROM debian
 | 
						|
 | 
						|
RUN apt-get update && apt-get install --no-install-recommends -y \
 | 
						|
    avr-libc \
 | 
						|
    avrdude \
 | 
						|
    binutils-arm-none-eabi \
 | 
						|
    binutils-avr \
 | 
						|
    build-essential \
 | 
						|
    dfu-programmer \
 | 
						|
    dfu-util \
 | 
						|
    gcc \
 | 
						|
    gcc-arm-none-eabi \
 | 
						|
    gcc-avr \
 | 
						|
    git \
 | 
						|
    libnewlib-arm-none-eabi \
 | 
						|
    software-properties-common \
 | 
						|
    unzip \
 | 
						|
    wget \
 | 
						|
    zip \
 | 
						|
    && rm -rf /var/lib/apt/lists/*
 | 
						|
 | 
						|
ENV KEYBOARD=ergodox_ez
 | 
						|
ENV KEYMAP=default
 | 
						|
 | 
						|
VOLUME /qmk_firmware
 | 
						|
WORKDIR /qmk_firmware
 | 
						|
COPY . .
 | 
						|
 | 
						|
CMD make $KEYBOARD:$KEYMAP
 |