mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Ensure the container state is removed on daemon boot
This ensures that the libcontainer state is fully removed for a container after it is terminated. Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
This commit is contained in:
parent
661c31737d
commit
06c939e527
1 changed files with 2 additions and 2 deletions
|
@ -242,6 +242,7 @@ func (d *driver) Unpause(c *execdriver.Command) error {
|
|||
}
|
||||
|
||||
func (d *driver) Terminate(c *execdriver.Command) error {
|
||||
defer d.cleanContainer(c.ID)
|
||||
// lets check the start time for the process
|
||||
active := d.activeContainers[c.ID]
|
||||
if active == nil {
|
||||
|
@ -262,7 +263,6 @@ func (d *driver) Terminate(c *execdriver.Command) error {
|
|||
err = syscall.Kill(pid, 9)
|
||||
syscall.Wait4(pid, nil, 0, nil)
|
||||
}
|
||||
d.cleanContainer(c.ID)
|
||||
|
||||
return err
|
||||
|
||||
|
@ -302,7 +302,7 @@ func (d *driver) cleanContainer(id string) error {
|
|||
d.Lock()
|
||||
delete(d.activeContainers, id)
|
||||
d.Unlock()
|
||||
return os.RemoveAll(filepath.Join(d.root, id, "container.json"))
|
||||
return os.RemoveAll(filepath.Join(d.root, id))
|
||||
}
|
||||
|
||||
func (d *driver) createContainerRoot(id string) error {
|
||||
|
|
Loading…
Add table
Reference in a new issue