Docker image for static DASH
Repository name in Docker Hub: williamyeh/dash
This Docker image contains only a static version of DASH (“the Debian Almquist Shell”).
To build a minimal Docker image, you may begin with
scratch, and then add something (usually static binary files without any runtime dependency) into it.
Sometimes we'd also like to put simple wrapper scripts into the image, too. Most people will begin with base images such as
alpine. However, even the BusyBox itself can be slimed down further, since the only thing needed here is a sh-compatible shell to interpret and execute our
For this case, I build a minimal Docker base image that contains only a statically linked program: DASH (“the Debian Almquist Shell”). To be more friendly to derived work, I also replace the only GPLv2 part in DASH (the
mksignames.c file) with an MIT-style data source: “SIGNAL(7) in Linux Programmer’s Manual”.
Highly compatible with "sh" (Bourne Shell).
Small (about 1.4 MB).
Permissive free software license.
Mostly used as a base image. For example:
# First, inherit from this image... FROM williamyeh/dash # Then, put your static binaries and scripts below... COPY ... ADD ...
About the rootfs
To build the rootfs on your own, see instructions for more details.
- 1.1 - Replace the only GPLv2 part in DASH (
mksignames.c) with an MIT-style data source.
- 1.0 - Initial release.
William Yeh, firstname.lastname@example.org
This image contains three components; each has its own license statement, respectively.
The second part, the
new-signames.cfile, is hand-crafted by me according to an MIT-style data source: “SIGNAL(7) in Linux Programmer’s Manual”.
The remain parts, written by me, is released to public domain. See LICENSE file for details.