func updateInstance(state *servicestate.ServiceState, ctr *docker.Container) error { if _, err := ctr.Inspect(); err != nil { return err } state.DockerID = ctr.ID state.Started = ctr.Created state.PrivateIP = ctr.NetworkSettings.IPAddress state.PortMapping = make(map[string][]domain.HostIPAndPort) for k, v := range ctr.NetworkSettings.Ports { pm := []domain.HostIPAndPort{} for _, pb := range v { pm = append(pm, domain.HostIPAndPort{HostIP: pb.HostIp, HostPort: pb.HostPort}) state.PortMapping[string(k)] = pm } } return nil }