diff --git a/daemon/daemon.go b/daemon/daemon.go index 6f4ac26ac2..ff40bdbe90 100644 --- a/daemon/daemon.go +++ b/daemon/daemon.go @@ -187,17 +187,16 @@ func (daemon *Daemon) restore() error { delete(containers, id) continue } - if err := daemon.Register(c); err != nil { - logrus.Errorf("Failed to register container %s: %s", c.ID, err) - delete(containers, id) - continue - } - // verify that all volumes valid and have been migrated from the pre-1.7 layout if err := daemon.verifyVolumesInfo(c); err != nil { // don't skip the container due to error logrus.Errorf("Failed to verify volumes for container '%s': %v", c.ID, err) } + if err := daemon.Register(c); err != nil { + logrus.Errorf("Failed to register container %s: %s", c.ID, err) + delete(containers, id) + continue + } // The LogConfig.Type is empty if the container was created before docker 1.12 with default log driver. // We should rewrite it to use the daemon defaults. diff --git a/daemon/daemon_unix_test.go b/daemon/daemon_unix_test.go index eb19376845..c3aa443e45 100644 --- a/daemon/daemon_unix_test.go +++ b/daemon/daemon_unix_test.go @@ -274,10 +274,6 @@ func TestMigratePre17Volumes(t *testing.T) { } `) - viewDB, err := container.NewViewDB() - if err != nil { - t.Fatal(err) - } volStore, err := store.New(volumeRoot) if err != nil { t.Fatal(err) @@ -289,10 +285,9 @@ func TestMigratePre17Volumes(t *testing.T) { volumedrivers.Register(drv, volume.DefaultDriverName) daemon := &Daemon{ - root: rootDir, - repository: containerRoot, - containersReplica: viewDB, - volumes: volStore, + root: rootDir, + repository: containerRoot, + volumes: volStore, } err = ioutil.WriteFile(filepath.Join(containerRoot, cid, "config.v2.json"), config, 600) if err != nil { diff --git a/daemon/volumes_unix.go b/daemon/volumes_unix.go index d6b48d381b..0a4cbf8493 100644 --- a/daemon/volumes_unix.go +++ b/daemon/volumes_unix.go @@ -180,7 +180,6 @@ func (daemon *Daemon) verifyVolumesInfo(container *container.Container) error { container.MountPoints[destination] = &m } } - return container.CheckpointTo(daemon.containersReplica) } return nil } diff --git a/integration-cli/docker_cli_daemon_test.go b/integration-cli/docker_cli_daemon_test.go index 4ec5ac230d..849820aa14 100644 --- a/integration-cli/docker_cli_daemon_test.go +++ b/integration-cli/docker_cli_daemon_test.go @@ -2684,7 +2684,7 @@ func (s *DockerDaemonSuite) TestDaemonBackcompatPre17Volumes(c *check.C) { `) configPath := filepath.Join(d.Root, "containers", id, "config.v2.json") - err = ioutil.WriteFile(configPath, config, 600) + c.Assert(ioutil.WriteFile(configPath, config, 600), checker.IsNil) d.Start(c) out, err = d.Cmd("inspect", "--type=container", "--format={{ json .Mounts }}", id)