diff --git a/libcontainerd/container_linux.go b/libcontainerd/container_linux.go index ed0ff05ffa..1857874b32 100644 --- a/libcontainerd/container_linux.go +++ b/libcontainerd/container_linux.go @@ -120,7 +120,7 @@ func (ctr *container) handleEvent(e *containerd.Event) error { if st.State == StateExit && ctr.restartManager != nil { restart, wait, err := ctr.restartManager.ShouldRestart(e.Status, false) if err != nil { - logrus.Error(err) + logrus.Warnf("container %s %v", ctr.containerID, err) } else if restart { st.State = StateRestart ctr.restarting = true diff --git a/restartmanager/restartmanager.go b/restartmanager/restartmanager.go index 2cf1de684f..38730a9dd9 100644 --- a/restartmanager/restartmanager.go +++ b/restartmanager/restartmanager.go @@ -42,6 +42,9 @@ func (rm *restartManager) SetPolicy(policy container.RestartPolicy) { } func (rm *restartManager) ShouldRestart(exitCode uint32, hasBeenManuallyStopped bool) (bool, chan error, error) { + if rm.policy.IsNone() { + return false, nil, nil + } rm.Lock() unlockOnExit := true defer func() {