2018-02-05 21:05:59 +00:00
|
|
|
package daemon // import "github.com/docker/docker/daemon"
|
2016-11-16 23:02:27 +00:00
|
|
|
|
2016-12-19 20:18:06 +00:00
|
|
|
// ContainerCreateWorkdir creates the working directory. This solves the
|
2016-11-16 23:02:27 +00:00
|
|
|
// issue arising from https://github.com/docker/docker/issues/27545,
|
|
|
|
// which was initially fixed by https://github.com/docker/docker/pull/27884. But that fix
|
|
|
|
// was too expensive in terms of performance on Windows. Instead,
|
|
|
|
// https://github.com/docker/docker/pull/28514 introduces this new functionality
|
|
|
|
// where the builder calls into the backend here to create the working directory.
|
|
|
|
func (daemon *Daemon) ContainerCreateWorkdir(cID string) error {
|
|
|
|
container, err := daemon.GetContainer(cID)
|
|
|
|
if err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
err = daemon.Mount(container)
|
|
|
|
if err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
defer daemon.Unmount(container)
|
2017-11-16 06:20:33 +00:00
|
|
|
return container.SetupWorkingDirectory(daemon.idMapping.RootPair())
|
2016-11-16 23:02:27 +00:00
|
|
|
}
|