busyboxEstimated reading time: 3 minutes
Busybox base image.
GitHub repo: https://github.com/docker-library/busybox
Supported tags and respective
Where to file issues:
the Docker Community
What is BusyBox? The Swiss Army Knife of Embedded Linux
Coming in somewhere between 1 and 5 Mb in on-disk size (depending on the variant), BusyBox is a very good ingredient to craft space-efficient distributions.
BusyBox combines tiny versions of many common UNIX utilities into a single small executable. It provides replacements for most of the utilities you usually find in GNU fileutils, shellutils, etc. The utilities in BusyBox generally have fewer options than their full-featured GNU cousins; however, the options that are included provide the expected functionality and behave very much like their GNU counterparts. BusyBox provides a fairly complete environment for any small or embedded system.
How to use this image
Run BusyBox shell
$ docker run -it --rm busybox
This will drop you into an
sh shell to allow you to do what you want inside a BusyBox system.
Dockerfile for a binary
FROM busybox COPY ./my-static-binary /my-static-binary CMD ["/my-static-binary"]
Dockerfile will allow you to create a minimal image for your statically compiled binary. You will have to compile the binary in some other place like another container. For a simpler alternative that’s similarly tiny but easier to extend, see
busybox images contain BusyBox built against various “libc” variants (for a comparison of “libc” variants, Eta Labs has a very nice chart which lists many similarities and differences).
For more information about the specific particulars of the build process for each variant, see
Dockerfile.builder in the same directory as each variant’s
Dockerfile (see links above).
- glibc from Debian (which is then included in the image)
- musl from Alpine (statically compiled)
View license information for the software contained in this image.
As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).
Some additional license information which was able to be auto-detected might be found in the
As for any pre-built image usage, it is the image user’s responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.library, sample, busybox