code: func updateContainerMetadata(metadata *dockerapi.DockerContainerMetadata, container *apicontainer.Container, task *apitask.Task) {
  	container.SetCreatedAt(metadata.CreatedAt)
  	container.SetStartedAt(metadata.StartedAt)
  	container.SetFinishedAt(metadata.FinishedAt)
  
  	// Set the labels if it's not set
  	if len(metadata.Labels) != 0 && len(container.GetLabels()) == 0 {
  		container.SetLabels(metadata.Labels)
  	}
  
  	// Update volume for empty volume container
  	if metadata.Volumes != nil {
  		if container.IsInternal() {
  			task.UpdateMountPoints(container, metadata.Volumes)
  		} else {
  			container.SetVolumes(metadata.Volumes)
  		}
  	}
  
  	// Set Exitcode if it's not set
  	if metadata.ExitCode != nil {
  		container.SetKnownExitCode(metadata.ExitCode)
  	}
  
  	// Set port mappings
  	if len(metadata.PortBindings) != 0 && len(container.GetKnownPortBindings()) == 0 {
  		container.SetKnownPortBindings(metadata.PortBindings)
  	}
  	// update the container health information
  	if container.HealthStatusShouldBeReported() {
  		container.SetHealthStatus(metadata.Health)
  	}
  	container.SetNetworkMode(metadata.NetworkMode)
  	container.SetNetworkSettings(metadata.NetworkSettings)
  }
docs: // updateContainerMetadata sets the container metadata from the docker inspect