diff --git a/pkg/hostman/guestman/pod_sync_loop.go b/pkg/hostman/guestman/pod_sync_loop.go index 22b187b340..94d93aa0ef 100644 --- a/pkg/hostman/guestman/pod_sync_loop.go +++ b/pkg/hostman/guestman/pod_sync_loop.go @@ -78,7 +78,7 @@ func (m *SGuestManager) reconcileContainer(obj *sPodGuestInstance, cache runtime // container is deleted continue } - if cs.State == runtime.ContainerStateExited && cs.ExitCode != 0 { + if cs.State == runtime.ContainerStateExited && (cs.ExitCode != 0 || ctr.Spec.AlwaysRestart) { if err := m.startContainer(obj, ctr, cs); err != nil { errs = append(errs, errors.Wrapf(err, "start container %s", ctr.Name)) }