diff --git a/container/state.go b/container/state.go index d9a77052a5..4146947bcb 100644 --- a/container/state.go +++ b/container/state.go @@ -210,7 +210,6 @@ func (s *State) SetExitCode(ec int) { func (s *State) SetRunning(pid int, initial bool) { s.error = "" s.Running = true - s.Paused = false s.Restarting = false s.exitCode = 0 s.Pid = pid diff --git a/daemon/monitor.go b/daemon/monitor.go index 63e5e844e9..60cd11ec2c 100644 --- a/daemon/monitor.go +++ b/daemon/monitor.go @@ -99,11 +99,17 @@ func (daemon *Daemon) StateChanged(id string, e libcontainerd.StateInfo) error { case libcontainerd.StatePause: // Container is already locked in this case c.Paused = true + if err := c.ToDisk(); err != nil { + return err + } daemon.updateHealthMonitor(c) daemon.LogContainerEvent(c, "pause") case libcontainerd.StateResume: // Container is already locked in this case c.Paused = false + if err := c.ToDisk(); err != nil { + return err + } daemon.updateHealthMonitor(c) daemon.LogContainerEvent(c, "unpause") }