Rancher created CentOS 7 hosts running Docker v1.11.1

When setting up a new CentOS 7 host, i can see that under the “advanced options” the “docker install url” is set to -

https://releases.rancher.com/install-docker/1.10.sh

but when the host comes up, it reports -

“docker --version
Docker version 1.11.1, build 5604cbe”

Which cloud provider/machine driver are you using to spin up hosts? I’d like to try and reproduce.

We found that if we manually set up a new CentOS 7 box, then run the script - “https://releases.rancher.com/install-docker/1.10.sh” the box will get set up with docker 1.10.3. So it appears this is happening post docker install, and before the box is “available” in rancher

We are on AWS, i’m using the default CentOS 7 HVM AMI - “ami-6d1c2007”

I think we found what is going on. It looks like some things are being called at the completion of the host setup -

[centos@D-RHST14 ~]$ sudo yum history
Loaded plugins: fastestmirror
ID | Command line | Date and time | Action(s) | Altered

 2 | install -y docker-engine | 2016-05-18 16:39 | Install        |    3 EE
 1 | -y update                | 2016-05-18 16:37 | I, U           |   51

history list

This is on a fresh setup through Rancher, we only ssh’d to the box and looked at the history, we didn’t run any cmds.

@Phillip_Ulberg looks like docker machine is running the yum update, which updates docker to 1.11, as soon as the machine comes online. If the CentOS image didn’t come with docker preinstalled, I dont think this issue would exist. Alternately the script could add logic to downgrade docker to the correct version? Regardless, looks like the docker machine install script for CentOS7 that Rancher provides needs some fixing.

The CentOS image is just the default AWS AMI, no docker pre-installed. -

CentOS Linux 7 x86_64 HVM EBS 1602-b7ee8a69-ee97-4a49-9e68-afaee216db2e-ami-d7e1d2bd.3 (ami-6d1c2007)

New instance info -

`[centos@ip-172-31-39-232 ~]$ sudo yum info docker-engine
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile

[centos@ip-172-31-39-232 ~]$ sudo yum history Loaded plugins: fastestmirror No transactions No accessible history to list

So, it must be something in docker machine.

@Phillip_Ulberg what zone are you launching these CentOS images?

I’m in the AWS us-east-1 region, using availability zones -

us-east-1b
us-east-1c
us-east-1d
us-east-1e

Ok…In docker-machine 0.6 the redhat provisioner (and only that one, others work) ignores the engine-install-url option entirely and always just uses the standard get.docker.com one, which gives you whatever happens to be the newest release today (1.11.1). This was fixed in machine 0.7 ( https://github.com/docker/machine/issues/3145 ), but we don’t package that yet.

0.6: https://github.com/docker/machine/blob/v0.6.0/libmachine/provision/redhat.go#L113
0.7: https://github.com/docker/machine/blob/v0.7.0/libmachine/provision/redhat.go#L118

Thanks for the info. Even if the correct docker version is installed, won’t it just get updated by the yum update cmd at the end of the docker machine provisioning?

I’ve created an issue on Github to track upgrading to Docker-machine v0.7.