diff --git a/libcontainerd/container_windows.go b/libcontainerd/container_windows.go index 7e36e857ec..49c2725774 100644 --- a/libcontainerd/container_windows.go +++ b/libcontainerd/container_windows.go @@ -274,6 +274,8 @@ func (ctr *container) shutdown() error { if err == hcsshim.ErrVmcomputeOperationPending { // Explicit timeout to avoid a (remote) possibility that shutdown hangs indefinitely. err = ctr.hcsContainer.WaitTimeout(shutdownTimeout) + } else if err == hcsshim.ErrVmcomputeAlreadyStopped { + err = nil } if err != nil { @@ -293,9 +295,12 @@ func (ctr *container) terminate() error { if err == hcsshim.ErrVmcomputeOperationPending { err = ctr.hcsContainer.WaitTimeout(terminateTimeout) + } else if err == hcsshim.ErrVmcomputeAlreadyStopped { + err = nil } if err != nil { + logrus.Debugf("error terminating container %s %v", ctr.containerID, err) return err }