Create container log symlink for all containers

pull/6/head
Pengfei Ni 2017-08-11 17:36:28 +08:00
parent 7adb675003
commit 9da9e2ab59
1 changed files with 10 additions and 7 deletions

View File

@ -236,18 +236,21 @@ func (ds *dockerService) removeContainerLogSymlink(containerID string) error {
// StartContainer starts the container.
func (ds *dockerService) StartContainer(containerID string) error {
err := ds.client.StartContainer(containerID)
if err != nil {
err = transformStartContainerError(err)
return fmt.Errorf("failed to start container %q: %v", containerID, err)
}
// Create container log symlink.
if err := ds.createContainerLogSymlink(containerID); err != nil {
// Create container log symlink for all containers (including failed ones).
if linkError := ds.createContainerLogSymlink(containerID); linkError != nil {
// Do not stop the container if we failed to create symlink because:
// 1. This is not a critical failure.
// 2. We don't have enough information to properly stop container here.
// Kubelet will surface this error to user via an event.
return err
return linkError
}
if err != nil {
err = transformStartContainerError(err)
return fmt.Errorf("failed to start container %q: %v", containerID, err)
}
return nil
}