github.com/hustcat/docker@v1.3.3-0.20160314103604-901c67a8eeab/daemon/execdriver/driver_windows.go (about) 1 package execdriver 2 3 import "github.com/docker/go-connections/nat" 4 5 // Mount contains information for a mount operation. 6 type Mount struct { 7 Source string `json:"source"` 8 Destination string `json:"destination"` 9 Writable bool `json:"writable"` 10 } 11 12 // Resources contains all resource configs for a driver. 13 // Currently these are all for cgroup configs. 14 type Resources struct { 15 CommonResources 16 17 // Fields below here are platform specific 18 } 19 20 // ProcessConfig is the platform specific structure that describes a process 21 // that will be run inside a container. 22 type ProcessConfig struct { 23 CommonProcessConfig 24 25 // Fields below here are platform specific 26 ConsoleSize [2]int `json:"-"` // h,w of initial console size 27 } 28 29 // Network settings of the container 30 type Network struct { 31 Interface *NetworkInterface `json:"interface"` 32 ContainerID string `json:"container_id"` // id of the container to join network. 33 } 34 35 // NetworkInterface contains network configs for a driver 36 type NetworkInterface struct { 37 MacAddress string `json:"mac"` 38 Bridge string `json:"bridge"` 39 IPAddress string `json:"ip"` 40 41 // PortBindings is the port mapping between the exposed port in the 42 // container and the port on the host. 43 PortBindings nat.PortMap `json:"port_bindings"` 44 } 45 46 // Command wraps an os/exec.Cmd to add more metadata 47 type Command struct { 48 CommonCommand 49 50 // Fields below here are platform specific 51 52 FirstStart bool `json:"first_start"` // Optimization for first boot of Windows 53 Hostname string `json:"hostname"` // Windows sets the hostname in the execdriver 54 LayerFolder string `json:"layer_folder"` // Layer folder for a command 55 LayerPaths []string `json:"layer_paths"` // Layer paths for a command 56 Isolation string `json:"isolation"` // Isolation technology for the container 57 ArgsEscaped bool `json:"args_escaped"` // True if args are already escaped 58 HvPartition bool `json:"hv_partition"` // True if it's an hypervisor partition 59 EpList []string `json:"endpoints"` // List of network endpoints for HNS 60 } 61 62 // ExitStatus provides exit reasons for a container. 63 type ExitStatus struct { 64 // The exit code with which the container exited. 65 ExitCode int 66 }