diff --git a/api/client/ps.go b/api/client/ps.go index ff8c18f9e1..a297f7df70 100644 --- a/api/client/ps.go +++ b/api/client/ps.go @@ -129,8 +129,9 @@ func (cli *DockerCli) CmdPs(args ...string) error { } var ( - names = stripNamePrefix(container.Names) - command = strconv.Quote(container.Command) + names = stripNamePrefix(container.Names) + command = strconv.Quote(container.Command) + displayPort string ) if !*noTrunc { @@ -150,9 +151,15 @@ func (cli *DockerCli) CmdPs(args ...string) error { image = "" } + if container.HostConfig.NetworkMode == "host" { + displayPort = "*/tcp, */udp" + } else { + displayPort = api.DisplayablePorts(container.Ports) + } + fmt.Fprintf(w, "%s\t%s\t%s\t%s ago\t%s\t%s\t%s\t", ID, image, command, units.HumanDuration(time.Now().UTC().Sub(time.Unix(int64(container.Created), 0))), - container.Status, api.DisplayablePorts(container.Ports), strings.Join(names, ",")) + container.Status, displayPort, strings.Join(names, ",")) if *size { if container.SizeRootFs > 0 { diff --git a/api/types/types.go b/api/types/types.go index d54b48bc79..fdcc228439 100644 --- a/api/types/types.go +++ b/api/types/types.go @@ -117,6 +117,9 @@ type Container struct { SizeRootFs int `json:",omitempty"` Labels map[string]string Status string + HostConfig struct { + NetworkMode string `json:",omitempty"` + } } // POST "/containers/"+containerID+"/copy" diff --git a/daemon/list.go b/daemon/list.go index 7389de8047..2b38b1ed96 100644 --- a/daemon/list.go +++ b/daemon/list.go @@ -151,6 +151,7 @@ func (daemon *Daemon) Containers(config *ContainersConfig) ([]*types.Container, } newC.Created = int(container.Created.Unix()) newC.Status = container.State.String() + newC.HostConfig.NetworkMode = string(container.HostConfig().NetworkMode) newC.Ports = []types.Port{} for port, bindings := range container.NetworkSettings.Ports {