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