diff --git a/components/engine/daemon/create.go b/components/engine/daemon/create.go index aaf0f1329b..adf163a471 100644 --- a/components/engine/daemon/create.go +++ b/components/engine/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 diff --git a/components/engine/daemon/create_unix.go b/components/engine/daemon/create_unix.go index 4d84997e93..4975c350a5 100644 --- a/components/engine/daemon/create_unix.go +++ b/components/engine/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)