github.com/rawahars/moby@v24.0.4+incompatible/api/types/configs.go (about)

     1  package types // import "github.com/docker/docker/api/types"
     2  
     3  import (
     4  	"github.com/docker/docker/api/types/container"
     5  	"github.com/docker/docker/api/types/network"
     6  	ocispec "github.com/opencontainers/image-spec/specs-go/v1"
     7  )
     8  
     9  // configs holds structs used for internal communication between the
    10  // frontend (such as an http server) and the backend (such as the
    11  // docker daemon).
    12  
    13  // ContainerCreateConfig is the parameter set to ContainerCreate()
    14  type ContainerCreateConfig struct {
    15  	Name             string
    16  	Config           *container.Config
    17  	HostConfig       *container.HostConfig
    18  	NetworkingConfig *network.NetworkingConfig
    19  	Platform         *ocispec.Platform
    20  	AdjustCPUShares  bool
    21  }
    22  
    23  // ContainerRmConfig holds arguments for the container remove
    24  // operation. This struct is used to tell the backend what operations
    25  // to perform.
    26  type ContainerRmConfig struct {
    27  	ForceRemove, RemoveVolume, RemoveLink bool
    28  }
    29  
    30  // ExecConfig is a small subset of the Config struct that holds the configuration
    31  // for the exec feature of docker.
    32  type ExecConfig struct {
    33  	User         string   // User that will run the command
    34  	Privileged   bool     // Is the container in privileged mode
    35  	Tty          bool     // Attach standard streams to a tty.
    36  	ConsoleSize  *[2]uint `json:",omitempty"` // Initial console size [height, width]
    37  	AttachStdin  bool     // Attach the standard input, makes possible user interaction
    38  	AttachStderr bool     // Attach the standard error
    39  	AttachStdout bool     // Attach the standard output
    40  	Detach       bool     // Execute in detach mode
    41  	DetachKeys   string   // Escape keys for detach
    42  	Env          []string // Environment variables
    43  	WorkingDir   string   // Working directory
    44  	Cmd          []string // Execution commands and args
    45  }
    46  
    47  // PluginRmConfig holds arguments for plugin remove.
    48  type PluginRmConfig struct {
    49  	ForceRemove bool
    50  }
    51  
    52  // PluginEnableConfig holds arguments for plugin enable
    53  type PluginEnableConfig struct {
    54  	Timeout int
    55  }
    56  
    57  // PluginDisableConfig holds arguments for plugin disable.
    58  type PluginDisableConfig struct {
    59  	ForceDisable bool
    60  }
    61  
    62  // NetworkListConfig stores the options available for listing networks
    63  type NetworkListConfig struct {
    64  	// TODO(@cpuguy83): naming is hard, this is pulled from what was being used in the router before moving here
    65  	Detailed bool
    66  	Verbose  bool
    67  }