Merge pull request #215 from vmarmol/docker-lxc

Only register the Docker driver in systems using libcontainer.
This commit is contained in:
Rohit Jnagal 2014-09-05 13:47:15 -07:00
commit f2745aa588

View File

@ -132,6 +132,23 @@ func Register(factory info.MachineInfoFactory) error {
} }
} }
} }
// Check that the libcontainer execdriver is used.
information, err := client.Info()
if err != nil {
return fmt.Errorf("failed to detect Docker info: %v", err)
}
usesNativeDriver := false
for _, val := range *information {
if strings.Contains(val, "ExecutionDriver=") && strings.Contains(val, "native") {
usesNativeDriver = true
break
}
}
if !usesNativeDriver {
return fmt.Errorf("Docker found, but not using native exec driver")
}
f := &dockerFactory{ f := &dockerFactory{
machineInfoFactory: factory, machineInfoFactory: factory,
useSystemd: systemd.UseSystemd(), useSystemd: systemd.UseSystemd(),