Skip to content

Commit d8fd430

Browse files
fix: Fix Issue with Podman Unable to Create PHP Runtime Website (#7253)
1 parent 8e3a06b commit d8fd430

File tree

2 files changed

+20
-6
lines changed

2 files changed

+20
-6
lines changed

Diff for: backend/app/service/container.go

+19
Original file line numberDiff line numberDiff line change
@@ -983,6 +983,25 @@ func checkImageExist(client *client.Client, imageItem string) bool {
983983
return false
984984
}
985985

986+
func checkImageLike(imageName string) bool {
987+
cli, err := docker.NewDockerClient()
988+
if err != nil {
989+
return false
990+
}
991+
images, err := cli.ImageList(context.Background(), image.ListOptions{})
992+
if err != nil {
993+
return false
994+
}
995+
for _, img := range images {
996+
for _, tag := range img.RepoTags {
997+
if strings.Contains(tag, imageName) {
998+
return true
999+
}
1000+
}
1001+
}
1002+
return false
1003+
}
1004+
9861005
func pullImages(ctx context.Context, client *client.Client, imageName string) error {
9871006
options := image.PullOptions{}
9881007
repos, _ := imageRepoRepo.List()

Diff for: backend/app/service/website.go

+1-6
Original file line numberDiff line numberDiff line change
@@ -313,12 +313,7 @@ func (w WebsiteService) CreateWebsite(create request.WebsiteCreate) (err error)
313313
switch runtime.Type {
314314
case constant.RuntimePHP:
315315
if runtime.Resource == constant.ResourceAppstore {
316-
client, err := docker.NewDockerClient()
317-
if err != nil {
318-
return err
319-
}
320-
defer client.Close()
321-
if !checkImageExist(client, runtime.Image) {
316+
if !checkImageLike(runtime.Image) {
322317
return buserr.WithName("ErrImageNotExist", runtime.Name)
323318
}
324319
var (

0 commit comments

Comments
 (0)