fix LogConfig for containers created before docker 1.12 on daemon startup

Signed-off-by: Shijiang Wei <mountkin@gmail.com>
This commit is contained in:
Shijiang Wei 2016-05-08 00:20:24 +08:00
parent 0b59ea60b2
commit 391441c28b

View file

@ -286,6 +286,16 @@ func (daemon *Daemon) restore() error {
logrus.Errorf("Failed to register container %s: %s", c.ID, err) logrus.Errorf("Failed to register container %s: %s", c.ID, err)
continue continue
} }
// The LogConfig.Type is empty if the container was created before docker 1.12 with default log driver.
// We should rewrite it to use the daemon defaults.
// Fixes https://github.com/docker/docker/issues/22536
if c.HostConfig.LogConfig.Type == "" {
if err := daemon.mergeAndVerifyLogConfig(&c.HostConfig.LogConfig); err != nil {
logrus.Errorf("Failed to verify log config for container %s: %q", c.ID, err)
continue
}
}
} }
var wg sync.WaitGroup var wg sync.WaitGroup
var mapLock sync.Mutex var mapLock sync.Mutex