Skip to content

Commit ca5ca9c

Browse files
committed
node: use a warning instead of fatal when docker ping fails
1 parent 188906e commit ca5ca9c

File tree

1 file changed

+14
-3
lines changed
  • pkg/cmd/server/kubernetes/node

1 file changed

+14
-3
lines changed

pkg/cmd/server/kubernetes/node/node.go

+14-3
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import (
2020
"k8s.io/kubernetes/pkg/kubelet/cadvisor"
2121
cadvisortesting "k8s.io/kubernetes/pkg/kubelet/cadvisor/testing"
2222
"k8s.io/kubernetes/pkg/kubelet/cm"
23+
"k8s.io/kubernetes/pkg/util/mount"
2324
"k8s.io/kubernetes/pkg/volume"
2425

2526
configapi "github.com/openshift/origin/pkg/cmd/server/api"
@@ -112,9 +113,19 @@ func (c *NodeConfig) EnsureDocker(docker *dockerutil.Helper) {
112113
return
113114
}
114115
}
115-
if err := dockerClient.Ping(); err != nil {
116-
glog.Fatalf("Docker could not be reached at %s. Docker must be installed and running to start containers.\n%v", endpoint, err)
117-
return
116+
_, isFakeDocker := client.(*dockertools.FakeDockerClient)
117+
if isFakeDocker {
118+
// If using the fake docker client, ensure that the CgroupDriver for the kubelet matches
119+
// the default cgroup driver, and use a fake mounter
120+
c.KubeletServer.CgroupDriver = "cgroupfs"
121+
c.KubeletDeps.Mounter = &mount.FakeMounter{}
122+
}
123+
124+
if !isFakeDocker {
125+
if err := dockerClient.Ping(); err != nil {
126+
glog.Fatalf("Docker could not be reached at %s. Docker must be installed and running to start containers.\n%v", endpoint, err)
127+
return
128+
}
118129
}
119130

120131
glog.Infof("Connecting to Docker at %s", endpoint)

0 commit comments

Comments
 (0)