Put tmp direcories under ~/.moby

Docker4Mac won't bind mount default tmp dir into containers

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
This commit is contained in:
Justin Cormack 2017-06-02 22:36:21 +01:00
parent 294389aef9
commit 5b73f53dcf
3 changed files with 10 additions and 11 deletions

View File

@ -90,7 +90,7 @@ func writeKernelInitrd(filename string, kernel []byte, initrd []byte, cmdline st
func outputLinuxKit(format string, filename string, kernel []byte, initrd []byte, cmdline string, size int, hyperkit bool) error {
log.Debugf("output linuxkit generated img: %s %s size %d", format, filename, size)
tmp, err := ioutil.TempDir("", "moby")
tmp, err := ioutil.TempDir(filepath.Join(MobyDir, "tmp"), "moby")
if err != nil {
return err
}

View File

@ -97,6 +97,11 @@ func main() {
log.Fatalf("Could not create config directory [%s]: %v", MobyDir, err)
}
err = os.MkdirAll(filepath.Join(MobyDir, "tmp"), 0755)
if err != nil {
log.Fatalf("Could not create config tmp directory [%s]: %v", filepath.Join(MobyDir, "tmp"), err)
}
switch args[0] {
case "build":
build(args[1:])

View File

@ -82,10 +82,11 @@ var outFuns = map[string]func(string, []byte, int, bool) error{
if err != nil {
return fmt.Errorf("Error converting to initrd: %v", err)
}
tmp, err := ioutil.TempDir("", "img-gz")
tmp, err := ioutil.TempDir(filepath.Join(MobyDir, "tmp"), "img-gz")
if err != nil {
return err
}
defer os.RemoveAll(tmp)
err = outputLinuxKit("raw", filepath.Join(tmp, "uncompressed.img"), kernel, initrd, cmdline, size, hyperkit)
if err != nil {
return fmt.Errorf("Error writing img-gz output: %v", err)
@ -112,10 +113,6 @@ var outFuns = map[string]func(string, []byte, int, bool) error{
if err != nil {
return err
}
err = os.RemoveAll(tmp)
if err != nil {
return err
}
return nil
},
"gcp-img": func(base string, image []byte, size int, hyperkit bool) error {
@ -125,10 +122,11 @@ var outFuns = map[string]func(string, []byte, int, bool) error{
if err != nil {
return fmt.Errorf("Error converting to initrd: %v", err)
}
tmp, err := ioutil.TempDir("", "gcp-img")
tmp, err := ioutil.TempDir(filepath.Join(MobyDir, "tmp"), "gcp-img")
if err != nil {
return err
}
defer os.RemoveAll(tmp)
err = outputLinuxKit("raw", filepath.Join(tmp, "disk.raw"), kernel, initrd, cmdline, size, hyperkit)
if err != nil {
return fmt.Errorf("Error writing gcp-img output: %v", err)
@ -173,10 +171,6 @@ var outFuns = map[string]func(string, []byte, int, bool) error{
if err != nil {
return err
}
err = os.RemoveAll(tmp)
if err != nil {
return err
}
return nil
},
"qcow2": func(base string, image []byte, size int, hyperkit bool) error {