Sometimes, you might need to have a slim image with only docker client instead of full docker engine. And since it is not available through package repositories like aptitude here is what you can do instead:
This will result in an unpacked image of about
25 MBin size.
Interesting thing about packaging docker client is that it is possible to
package that pretty much in any image, alpine, busybox, ubuntu, etc. This
is only possible because
Go language that is used to build docker tools is
musl or any other C-library, but directly using
syscalls. There are some downsides to it, but in my mind it was the right
choice that enabled the possibility to package such binaries with any docker
image. I also suspect that
Go will play especially well with unikernels
because of that.
Author Roman Kuznetsov
License Roman Kuznetsov