Parcourir la source

Add missing call to "VolumeDriver.Mount" during container start.

On container start, volume mounts are setup which should include
invoking "VolumeDriver.Mount" to setup necessary mounts. This was
missing for Windows containers. Fix that.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
Anusha Ragunathan il y a 8 ans
Parent
commit
b15264004d
1 fichiers modifiés avec 4 ajouts et 8 suppressions
  1. 4 8
      daemon/volumes_windows.go

+ 4 - 8
daemon/volumes_windows.go

@@ -3,7 +3,6 @@
 package daemon
 
 import (
-	"fmt"
 	"sort"
 
 	"github.com/docker/docker/container"
@@ -25,14 +24,11 @@ func (daemon *Daemon) setupMounts(c *container.Container) ([]container.Mount, er
 		if err := daemon.lazyInitializeVolume(c.ID, mount); err != nil {
 			return nil, err
 		}
-		// If there is no source, take it from the volume path
-		s := mount.Source
-		if s == "" && mount.Volume != nil {
-			s = mount.Volume.Path()
-		}
-		if s == "" {
-			return nil, fmt.Errorf("No source for mount name '%s' driver %q destination '%s'", mount.Name, mount.Driver, mount.Destination)
+		s, err := mount.Setup(c.MountLabel, 0, 0)
+		if err != nil {
+			return nil, err
 		}
+
 		mnts = append(mnts, container.Mount{
 			Source:      s,
 			Destination: mount.Destination,