Licensing of docker.exe and dockerd.exe

What is the licensing for the binaries downloaded here:

Thanks.

Docker CE is free to use. Only Docker Desktop requires subscription for large companies. Those binaries are probably built from the moby project:

So the license must be Apache 2.0.

Sadly, this answer is nothing we can (legally) rely on. I guess we must build it ourselft.

Following these instructions:

How could you build it without it already installed? But I guess this is a question for another topic.

Docker CE is definitely free, no question. So if you run it in a virtual machine you can use it and build a binary if there is no other way.

On the other hand if you download the binary to check the version number running docker version you will get the commit hashes that you can find on GitHub. The tar contains multiple binaries, but containerd is free too as runc, so I only checked the version of Docker which could have a paid version, but there is no enterprise version anymore since it was bought by Mirantis.

If you check the version running ./docker --version, you will get this hash for the client: “baeda1f”

Which is the hash of this version: Release v20.10.21 · docker/cli · GitHub

If you open the main page of that repo, although this repository mentions Docker EE (I guess they forgot to remove that or Docker EE uses the same free client) at the bottom of the README you will find that the license is Apache 2.0

The hash of the dockerd binary is “3056208” which is exactly the same as you can find here: Release v20.10.21 · moby/moby · GitHub

and moby’s license is Apache 2.0

Currently there are only two type of Docker. Docker CE and Docker Desktop. Docker CE is always free and the binaries of dockerd and docker are parts of Docker CE. They have exactly the same commit hashes as my docker binaries installed from the APT repository of docker-ce. Docker Desktop is free for perosnal use and small companies and requires subscription for large companies. It is not open source but it contains the open source Docker CE in its virtual machine and additional components.

You can install Docker CE multiple ways but those are still Docker CE unless it is Docker Desktop.

Update:

You actually wanted to ask about the exe files. The rule is the same. I havent tried docker.exe --version but I am sure you would see the same result. Although you could not run Linux containers using dockerd.exe

Thanks for this hint. However:

The latest binary on that page is

C:\Users\...\Downloads\docker-20.10.9\docker>docker.exe --version
Docker version 20.10.9, build c2ea9bc

This does NOT correlate to the sha from the release tag:

Because that is the repository of the daemon. This is the client:

Thanks!

C:\Users.…\Downloads\docker-20.10.9\docker>docker --version
Docker version 20.10.9, build c2ea9bc

C:\Users.…\Downloads\docker-20.10.9\docker>dockerd --version
Docker version 20.10.9, build 79ea9d3