Skip to content

Latest commit

 

History

History

busybox

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

Supported tags and respective Dockerfile links

For more information about this image and its history, please see the relevant manifest file (library/busybox). This image is updated via pull requests to the docker-library/official-images GitHub repo.

For detailed information about the virtual/transfer sizes and individual layers of each of the above supported tags, please see the busybox/tag-details.md file in the docker-library/docs GitHub repo.

What is BusyBox? The Swiss Army Knife of Embedded Linux

At about 2.5 Mb in size, 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.

wikipedia.org/wiki/BusyBox

logo

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.

Create a Dockerfile for a binary

FROM busybox
COPY ./my-static-binary /my-static-binary
CMD ["/my-static-binary"]

This 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.

More about this image

The tags of this image are built using two different methods. The ubuntu tags are using the busybox-static package from Ubuntu, adding a few support files so that it works in Docker. It's super fast to build (a minute or even less). The buildroot tags are going the long way: they use buildroot to craft a whole filesystem, with busybox but also all required libraries and other support files. It has a stronger guarantee of "this will work". It is also smaller because it's using uclibc, however it takes hours to build.

Having two totally different builders means that if one of the goes belly up, we can always fall-back on the other since this image is used in much of build testing of docker itself.

License

View license information for the software contained in this image.

Supported Docker versions

This image is officially supported on Docker version 1.9.0.

Support for older versions (down to 1.6) is provided on a best-effort basis.

Please see the Docker installation documentation for details on how to upgrade your Docker daemon.

User Feedback

Documentation

Documentation for this image is stored in the busybox/ directory of the docker-library/docs GitHub repo. Be sure to familiarize yourself with the repository's README.md file before attempting a pull request.

Issues

If you have any problems with or questions about this image, please contact us through a GitHub issue.

You can also reach many of the official image maintainers via the #docker-library IRC channel on Freenode.

Contributing

You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.

Before you start to code, we recommend discussing your plans through a GitHub issue, especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.