diff --git a/backend/app/service/container_compose.go b/backend/app/service/container_compose.go index e977a976e..3a245efd1 100644 --- a/backend/app/service/container_compose.go +++ b/backend/app/service/container_compose.go @@ -268,8 +268,14 @@ func (u *ContainerService) ComposeOperation(req dto.ComposeOperation) error { _ = composeRepo.DeleteRecord(commonRepo.WithByName(req.Name)) return nil } - if stdout, err := compose.Operate(req.Path, req.Operation); err != nil { - return errors.New(string(stdout)) + if req.Operation == "up" { + if stdout, err := compose.Up(req.Path); err != nil { + return errors.New(string(stdout)) + } + } else { + if stdout, err := compose.Operate(req.Path, req.Operation); err != nil { + return errors.New(string(stdout)) + } } global.LOG.Infof("docker-compose %s %s successful", req.Operation, req.Name) return nil diff --git a/frontend/src/views/container/compose/detail/index.vue b/frontend/src/views/container/compose/detail/index.vue index a219deafd..6ea4a6fb5 100644 --- a/frontend/src/views/container/compose/detail/index.vue +++ b/frontend/src/views/container/compose/detail/index.vue @@ -143,7 +143,6 @@ const dialogContainerLogRef = ref(); const opRef = ref(); -const emit = defineEmits<{ (e: 'back'): void }>(); interface DialogProps { createdBy: string; name: string; @@ -283,11 +282,7 @@ const onComposeOperate = async (operation: string) => { .then(() => { loading.value = false; MsgSuccess(i18n.global.t('commons.msg.operationSuccess')); - if (operation === 'down') { - emit('back'); - } else { - search(); - } + search(); }) .catch(() => { loading.value = false; diff --git a/frontend/src/views/container/compose/index.vue b/frontend/src/views/container/compose/index.vue index a8680b5a8..a57eed011 100644 --- a/frontend/src/views/container/compose/index.vue +++ b/frontend/src/views/container/compose/index.vue @@ -1,7 +1,7 @@