فهرست منبع

Optimize Create Container to skip extra mount on Windows.

Signed-off-by: Stefan J. Wernli <swernli@microsoft.com>
Stefan J. Wernli 9 سال پیش
والد
کامیت
9112d90b27
2فایلهای تغییر یافته به همراه5 افزوده شده و 4 حذف شده
  1. 0 4
      daemon/create.go
  2. 5 0
      daemon/create_unix.go

+ 0 - 4
daemon/create.go

@@ -114,10 +114,6 @@ func (daemon *Daemon) create(params *ContainerCreateConfig) (retC *Container, re
 			}
 		}
 	}()
-	if err := daemon.Mount(container); err != nil {
-		return nil, err
-	}
-	defer daemon.Unmount(container)
 
 	if err := daemon.createContainerPlatformSpecificSettings(container, params.Config, params.HostConfig, img); err != nil {
 		return nil, err

+ 5 - 0
daemon/create_unix.go

@@ -16,6 +16,11 @@ import (
 
 // createContainerPlatformSpecificSettings performs platform specific container create functionality
 func (daemon *Daemon) createContainerPlatformSpecificSettings(container *Container, config *runconfig.Config, hostConfig *runconfig.HostConfig, img *image.Image) error {
+	if err := daemon.Mount(container); err != nil {
+		return err
+	}
+	defer daemon.Unmount(container)
+
 	for spec := range config.Volumes {
 		name := stringid.GenerateNonCryptoID()
 		destination := filepath.Clean(spec)