From e56e9aa84a52f92770fbd663f183c5b6c60edd38 Mon Sep 17 00:00:00 2001 From: haoyun Date: Fri, 11 Jul 2025 16:04:34 +0800 Subject: [PATCH] fix: call wait before start Signed-off-by: haoyun --- cmd/nerdctl/container/container_run.go | 10 ++++++---- pkg/containerutil/containerutil.go | 10 ++++------ 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/cmd/nerdctl/container/container_run.go b/cmd/nerdctl/container/container_run.go index f498f2df6d5..67b797bdce9 100644 --- a/cmd/nerdctl/container/container_run.go +++ b/cmd/nerdctl/container/container_run.go @@ -435,6 +435,12 @@ func runAction(cmd *cobra.Command, args []string) error { if err != nil { return err } + + statusC, err := task.Wait(ctx) + if err != nil { + return err + } + if err := task.Start(ctx); err != nil { return err } @@ -454,10 +460,6 @@ func runAction(cmd *cobra.Command, args []string) error { } } - statusC, err := task.Wait(ctx) - if err != nil { - return err - } select { // io.Wait() would return when either 1) the user detaches from the container OR 2) the container is about to exit. // diff --git a/pkg/containerutil/containerutil.go b/pkg/containerutil/containerutil.go index 64352f75e7b..60da6f11895 100644 --- a/pkg/containerutil/containerutil.go +++ b/pkg/containerutil/containerutil.go @@ -279,7 +279,10 @@ func Start(ctx context.Context, container containerd.Container, isAttach bool, i if err != nil { return err } - + statusC, err := task.Wait(ctx) + if err != nil { + return err + } if err := task.Start(ctx); err != nil { return err } @@ -293,11 +296,6 @@ func Start(ctx context.Context, container containerd.Container, isAttach bool, i } sigc := signalutil.ForwardAllSignals(ctx, task) defer signalutil.StopCatch(sigc) - - statusC, err := task.Wait(ctx) - if err != nil { - return err - } select { // io.Wait() would return when either 1) the user detaches from the container OR 2) the container is about to exit. //