Prechádzať zdrojové kódy

Merge pull request #2102 from jmorganca/mxyng/fix-create-override

fix: remove overwritten model layers
Michael Yang 1 rok pred
rodič
commit
6225fde046
1 zmenil súbory, kde vykonal 7 pridanie a 2 odobranie
  1. 7 2
      server/images.go

+ 7 - 2
server/images.go

@@ -412,6 +412,13 @@ func realpath(mfDir, from string) string {
 }
 
 func CreateModel(ctx context.Context, name, modelFileDir string, commands []parser.Command, fn func(resp api.ProgressResponse)) error {
+	deleteMap := make(map[string]struct{})
+	if manifest, _, err := GetManifest(ParseModelPath(name)); err == nil {
+		for _, layer := range append(manifest.Layers, manifest.Config) {
+			deleteMap[layer.Digest] = struct{}{}
+		}
+	}
+
 	config := ConfigV2{
 		OS:           "linux",
 		Architecture: "amd64",
@@ -420,8 +427,6 @@ func CreateModel(ctx context.Context, name, modelFileDir string, commands []pars
 		},
 	}
 
-	deleteMap := make(map[string]struct{})
-
 	var layers Layers
 
 	params := make(map[string][]string)