code: func (c *container) inspect(vm *VirtualMachine) error {
  	if c.id == "" {
  		return nil
  	}
  
  	var objects []struct {
  		NetworkSettings struct {
  			Gateway     string
  			IPAddress   string
  			IPPrefixLen int
  			MacAddress  string
  		}
  	}
  
  	cmd := exec.Command("docker", "inspect", c.id)
  	out, err := cmd.Output()
  	if err != nil {
  		return err
  	}
  	if err = json.NewDecoder(bytes.NewReader(out)).Decode(&objects); err != nil {
  		return err
  	}
  
  	vm.Config.Annotation = strings.Join(cmd.Args, " ")
  	vm.logPrintf("%s: %s", vm.Config.Annotation, string(out))
  
  	for _, o := range objects {
  		s := o.NetworkSettings
  		if s.IPAddress == "" {
  			continue
  		}
  
  		vm.Guest.IpAddress = s.IPAddress
  		vm.Summary.Guest.IpAddress = s.IPAddress
  
  		if len(vm.Guest.Net) != 0 {
  			net := &vm.Guest.Net[0]
  			net.IpAddress = []string{s.IPAddress}
  			net.MacAddress = s.MacAddress
  		}
  	}
  
  	return nil
  }
docs: // inspect applies container network settings to vm.Guest properties.