Update supported Docker API in GitLab Runner to follow Docker guidance
Issue
At the moment, we currently maintain support for Docker version 1.6 and API 1.18, and are missing support for some very current versions of Docker since the daemon is now starting to reject connections from these old clients.
For example, in Docker on Windows:
> docker version
Client:
Version: 17.11.0-ce
API version: 1.18
Go version: go1.8.4
Git commit: 1caf76c
Built: Mon Nov 20 18:30:11 2017
OS/Arch: windows/amd64
Error response from daemon: client version 1.18 is too old. Minimum supported API version is 1.24, please upgrade your client to a newer version
Deliverable
Let's roll forward the internal support in the Runner to the Docker recommendations here, which means to upgrade to 1.12 client and 1.24 API as our default version. This will help resolve some of the issues Windows users are seeing immediately, as well as ones on other platforms once distros update to newer version of Docker. Then, on an ongoing basis, we will follow the Docker-provided guidance on active versions in the field.
If/since our library can implement multiple versions, we can also expose the version as a configuration item. But the default should be the Docker-recommended minimum of 1.24.
To Do
-
Update github.com/docker/docker
dependencies -
Update github.com/docker/docker
client -
Make docker api version configurable -
Set default version of docker api toThis will be done in a separate issue #3905 (closed) since support for centos6 needs to be deprecated.1.24
-
Update documentation that the default version of the API isThis will be done in a separate issue #3905 (closed) since support for centos6 needs to be deprecated.1.24