docker-0.6.0.0: An API client for docker written in Haskell

Safe HaskellNone
LanguageHaskell2010

Docker.Client.Types

Synopsis

Documentation

type URL = Text #

We should newtype this

type ApiVersion = Text #

We should newtype this

fromContainerID :: ContainerID -> Text #

Used for extracting the id of the container from the newtype

toContainerID :: Text -> Maybe ContainerID #

Used for parsing a Text value into a ContainerID. We apply some basic validation here.

data ImageID #

Instances
Eq ImageID # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: ImageID -> ImageID -> Bool #

(/=) :: ImageID -> ImageID -> Bool #

Show ImageID # 
Instance details

Defined in Docker.Client.Types

ToJSON ImageID # 
Instance details

Defined in Docker.Client.Types

FromJSON ImageID # 
Instance details

Defined in Docker.Client.Types

fromImageID :: ImageID -> Text #

Used for extracting the id of the image from the newtype.

toImageID :: Text -> Maybe ImageID #

Helper function used for parsing a Text value into an ImageID. For now just basic validation is used.

data NetworkID #

Instances
Eq NetworkID # 
Instance details

Defined in Docker.Client.Types

Show NetworkID # 
Instance details

Defined in Docker.Client.Types

ToJSON NetworkID # 
Instance details

Defined in Docker.Client.Types

FromJSON NetworkID # 
Instance details

Defined in Docker.Client.Types

fromNetworkID :: NetworkID -> Text #

Used for extracting the id of the container from the newtype

toNetworkID :: Text -> Maybe NetworkID #

Used for parsing a Text value into a NetworkID.

data Timeout #

Timeout used for stopping a container. DefaultTimeout is 10 seconds.

Instances
Eq Timeout # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: Timeout -> Timeout -> Bool #

(/=) :: Timeout -> Timeout -> Bool #

Show Timeout # 
Instance details

Defined in Docker.Client.Types

data Signal #

Signal used for sending to the process running in the container. The default signal is SIGTERM.

Instances
Eq Signal # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: Signal -> Signal -> Bool #

(/=) :: Signal -> Signal -> Bool #

Show Signal # 
Instance details

Defined in Docker.Client.Types

ToJSON Signal # 
Instance details

Defined in Docker.Client.Types

FromJSON Signal # 
Instance details

Defined in Docker.Client.Types

data ContainerDetails #

Instances
Eq ContainerDetails # 
Instance details

Defined in Docker.Client.Types

Show ContainerDetails # 
Instance details

Defined in Docker.Client.Types

Generic ContainerDetails # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep ContainerDetails :: * -> * #

FromJSON ContainerDetails # 
Instance details

Defined in Docker.Client.Types

type Rep ContainerDetails # 
Instance details

Defined in Docker.Client.Types

type Rep ContainerDetails = D1 (MetaData "ContainerDetails" "Docker.Client.Types" "docker-0.6.0.0-GtJwIiAfbAs4xgCOTSUGuQ" False) (C1 (MetaCons "ContainerDetails" PrefixI True) ((((S1 (MetaSel (Just "appArmorProfile") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "args") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Text])) :*: (S1 (MetaSel (Just "containerDetailsConfig") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ContainerConfig) :*: (S1 (MetaSel (Just "created") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 UTCTime) :*: S1 (MetaSel (Just "driver") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))) :*: ((S1 (MetaSel (Just "containerDetailsHostConfig") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 HostConfig) :*: S1 (MetaSel (Just "hostnamePath") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 FilePath)) :*: (S1 (MetaSel (Just "hostsPath") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 FilePath) :*: (S1 (MetaSel (Just "logPath") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 FilePath) :*: S1 (MetaSel (Just "containerDetailsId") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ContainerID))))) :*: (((S1 (MetaSel (Just "containerDetailsImage") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ImageID) :*: S1 (MetaSel (Just "mountLabel") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)) :*: (S1 (MetaSel (Just "name") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: (S1 (MetaSel (Just "networkSettings") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 NetworkSettings) :*: S1 (MetaSel (Just "path") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 FilePath)))) :*: ((S1 (MetaSel (Just "processLabel") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "resolveConfPath") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 FilePath)) :*: (S1 (MetaSel (Just "restartCount") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Int) :*: (S1 (MetaSel (Just "containerDetailsState") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ContainerState) :*: S1 (MetaSel (Just "mounts") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Mount])))))))

data DockerClientOpts #

Client options used to configure the remote engine we're talking to

Constructors

DockerClientOpts 

Fields

defaultClientOpts :: DockerClientOpts #

Default DockerClientOpts used for talking to the docker engine.

data ListOpts #

List options used for filtering the list of container or images.

Constructors

ListOpts 

Fields

Instances
Eq ListOpts # 
Instance details

Defined in Docker.Client.Types

Show ListOpts # 
Instance details

Defined in Docker.Client.Types

defaultListOpts :: ListOpts #

Default ListOpts. Doesn't list stopped containers.

data DockerVersion #

Data type used for represneting the version of the docker engine remote API.

Instances
Eq DockerVersion # 
Instance details

Defined in Docker.Client.Types

Show DockerVersion # 
Instance details

Defined in Docker.Client.Types

Generic DockerVersion # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep DockerVersion :: * -> * #

ToJSON DockerVersion # 
Instance details

Defined in Docker.Client.Types

FromJSON DockerVersion # 
Instance details

Defined in Docker.Client.Types

type Rep DockerVersion # 
Instance details

Defined in Docker.Client.Types

data ContainerPortInfo #

Data type used for representing the information of various ports that a contianer may expose.

data ContainerState #

Data type used for parsing the container state from a list of containers.

Instances
Eq ContainerState # 
Instance details

Defined in Docker.Client.Types

Show ContainerState # 
Instance details

Defined in Docker.Client.Types

Generic ContainerState # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep ContainerState :: * -> * #

FromJSON ContainerState # 
Instance details

Defined in Docker.Client.Types

type Rep ContainerState # 
Instance details

Defined in Docker.Client.Types

data State #

Represents the state of the container life cycle.

Instances
Eq State # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: State -> State -> Bool #

(/=) :: State -> State -> Bool #

Show State # 
Instance details

Defined in Docker.Client.Types

Methods

showsPrec :: Int -> State -> ShowS #

show :: State -> String #

showList :: [State] -> ShowS #

Generic State # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep State :: * -> * #

Methods

from :: State -> Rep State x #

to :: Rep State x -> State #

FromJSON State # 
Instance details

Defined in Docker.Client.Types

type Rep State # 
Instance details

Defined in Docker.Client.Types

type Rep State = D1 (MetaData "State" "Docker.Client.Types" "docker-0.6.0.0-GtJwIiAfbAs4xgCOTSUGuQ" False) ((C1 (MetaCons "Created" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "Restarting" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "Running" PrefixI False) (U1 :: * -> *))) :+: (C1 (MetaCons "Paused" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "Exited" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "Dead" PrefixI False) (U1 :: * -> *))))

type Digest = Text #

Alias for representing a RepoDigest. We could newtype this and add some validation.

data Label #

Container and Image Labels.

Constructors

Label Name Value 
Instances
Eq Label # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: Label -> Label -> Bool #

(/=) :: Label -> Label -> Bool #

Show Label # 
Instance details

Defined in Docker.Client.Types

Methods

showsPrec :: Int -> Label -> ShowS #

show :: Label -> String #

showList :: [Label] -> ShowS #

ToJSON [Label] # 
Instance details

Defined in Docker.Client.Types

FromJSON [Label] # 
Instance details

Defined in Docker.Client.Types

type Tag = Text #

Alias for Tags.

data Image #

Data type used for parsing information from a list of images.

Instances
Eq Image # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: Image -> Image -> Bool #

(/=) :: Image -> Image -> Bool #

Show Image # 
Instance details

Defined in Docker.Client.Types

Methods

showsPrec :: Int -> Image -> ShowS #

show :: Image -> String #

showList :: [Image] -> ShowS #

Generic Image # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep Image :: * -> * #

Methods

from :: Image -> Rep Image x #

to :: Rep Image x -> Image #

FromJSON Image # 
Instance details

Defined in Docker.Client.Types

type Rep Image # 
Instance details

Defined in Docker.Client.Types

data Entrypoint #

Constructors

Entrypoint [Text] 
Instances
Eq Entrypoint # 
Instance details

Defined in Docker.Client.Types

Show Entrypoint # 
Instance details

Defined in Docker.Client.Types

Generic Entrypoint # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep Entrypoint :: * -> * #

ToJSON Entrypoint # 
Instance details

Defined in Docker.Client.Types

FromJSON Entrypoint # 
Instance details

Defined in Docker.Client.Types

type Rep Entrypoint # 
Instance details

Defined in Docker.Client.Types

type Rep Entrypoint = D1 (MetaData "Entrypoint" "Docker.Client.Types" "docker-0.6.0.0-GtJwIiAfbAs4xgCOTSUGuQ" False) (C1 (MetaCons "Entrypoint" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Text])))

dropImagePrefix :: [a] -> [a] #

Helper function used for dropping the "image" prefix when serializing the Image data type to and from json.

data CreateOpts #

Options used for creating a Container.

data BuildOpts #

Options for when building images from a Dockerfile

Constructors

BuildOpts 

Fields

Instances
Eq BuildOpts # 
Instance details

Defined in Docker.Client.Types

Show BuildOpts # 
Instance details

Defined in Docker.Client.Types

defaultCreateOpts :: Text -> CreateOpts #

Default create options when creating a container. You only need to specify an image name and the rest is all sensible defaults.

data DetachKeys #

Override the key sequence for detaching a container. Format is a single character [a-Z] or ctrl-value where value is one of: a-z, @, ^, [, , or _.

Instances
Eq DetachKeys # 
Instance details

Defined in Docker.Client.Types

Show DetachKeys # 
Instance details

Defined in Docker.Client.Types

data StartOpts #

Options for starting a container.

Constructors

StartOpts 
Instances
Eq StartOpts # 
Instance details

Defined in Docker.Client.Types

Show StartOpts # 
Instance details

Defined in Docker.Client.Types

defaultStartOpts :: StartOpts #

Default options for staring a container.

data ContainerDeleteOpts #

Options for deleting a container.

Constructors

ContainerDeleteOpts 

Fields

  • deleteVolumes :: Bool

    Automatically cleanup volumes that the container created as well.

  • force :: Bool

    If the container is still running force deletion anyway.

defaultContainerDeleteOpts :: ContainerDeleteOpts #

Default options for deleting a container. Most of the time we DON'T want to delete the container's volumes or force delete it if it's running.

data ImageDeleteOpts #

Image delete opts

Constructors

ImageDeleteOpts 

defaultImageDeleteOpts :: ImageDeleteOpts #

Sane image deletion defaults

type Timestamp = Integer #

Timestamp alias.

data TailLogOpt #

Used for requesting N number of lines when tailing a containers log output.

Constructors

Tail Integer 
All 
Instances
Eq TailLogOpt # 
Instance details

Defined in Docker.Client.Types

Show TailLogOpt # 
Instance details

Defined in Docker.Client.Types

data LogOpts #

Log options used when requesting the log output from a container.

Constructors

LogOpts 
Instances
Eq LogOpts # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: LogOpts -> LogOpts -> Bool #

(/=) :: LogOpts -> LogOpts -> Bool #

Show LogOpts # 
Instance details

Defined in Docker.Client.Types

defaultLogOpts :: LogOpts #

Sensible default for log options.

data CreateNetworkOpts #

Options for creating a network

Constructors

CreateNetworkOpts 

Fields

defaultCreateNetworkOpts :: Text -> CreateNetworkOpts #

Sensible defalut for create network options

data VolumePermission #

Set permissions on volumes that you mount in the container.

Constructors

ReadWrite 
ReadOnly 
Instances
Eq VolumePermission # 
Instance details

Defined in Docker.Client.Types

Show VolumePermission # 
Instance details

Defined in Docker.Client.Types

Generic VolumePermission # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep VolumePermission :: * -> * #

ToJSON VolumePermission # 
Instance details

Defined in Docker.Client.Types

FromJSON VolumePermission # 
Instance details

Defined in Docker.Client.Types

type Rep VolumePermission # 
Instance details

Defined in Docker.Client.Types

type Rep VolumePermission = D1 (MetaData "VolumePermission" "Docker.Client.Types" "docker-0.6.0.0-GtJwIiAfbAs4xgCOTSUGuQ" False) (C1 (MetaCons "ReadWrite" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "ReadOnly" PrefixI False) (U1 :: * -> *))

data Bind #

Instances
Eq Bind # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: Bind -> Bind -> Bool #

(/=) :: Bind -> Bind -> Bool #

Show Bind # 
Instance details

Defined in Docker.Client.Types

Methods

showsPrec :: Int -> Bind -> ShowS #

show :: Bind -> String #

showList :: [Bind] -> ShowS #

ToJSON Bind # 
Instance details

Defined in Docker.Client.Types

FromJSON Bind # 
Instance details

Defined in Docker.Client.Types

newtype Volume #

Used for marking a directory in the container as "exposed" hence taking it outside of the COW filesystem and making it mountable in other containers using VolumesFrom. The volume usually get's created somewhere in varlibdockervolumes (depending on the volume driver used). The CLI example is:

docker run --name app -v /opt/data -it myapp:latest
docker run --name app2 --volumes-from app /bin/bash -c "ls -l /opt/data"

Constructors

Volume FilePath 
Instances
Eq Volume # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: Volume -> Volume -> Bool #

(/=) :: Volume -> Volume -> Bool #

Show Volume # 
Instance details

Defined in Docker.Client.Types

ToJSON [Volume] # 
Instance details

Defined in Docker.Client.Types

FromJSON [Volume] # 
Instance details

Defined in Docker.Client.Types

data Device #

Instances
Eq Device # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: Device -> Device -> Bool #

(/=) :: Device -> Device -> Bool #

Show Device # 
Instance details

Defined in Docker.Client.Types

Generic Device # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep Device :: * -> * #

Methods

from :: Device -> Rep Device x #

to :: Rep Device x -> Device #

ToJSON Device # 
Instance details

Defined in Docker.Client.Types

FromJSON Device # 
Instance details

Defined in Docker.Client.Types

type Rep Device # 
Instance details

Defined in Docker.Client.Types

type Rep Device = D1 (MetaData "Device" "Docker.Client.Types" "docker-0.6.0.0-GtJwIiAfbAs4xgCOTSUGuQ" False) (C1 (MetaCons "Device" PrefixI True) (S1 (MetaSel (Just "pathOnHost") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 FilePath) :*: (S1 (MetaSel (Just "pathInContainer") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 FilePath) :*: S1 (MetaSel (Just "cgroupPermissions") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text))))

data Link #

Constructors

Link Text (Maybe Text) 

data PortType #

Constructors

TCP 
UDP 
Instances
Eq PortType # 
Instance details

Defined in Docker.Client.Types

Ord PortType # 
Instance details

Defined in Docker.Client.Types

Read PortType # 
Instance details

Defined in Docker.Client.Types

Show PortType # 
Instance details

Defined in Docker.Client.Types

Generic PortType # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep PortType :: * -> * #

Methods

from :: PortType -> Rep PortType x #

to :: Rep PortType x -> PortType #

ToJSON PortType # 
Instance details

Defined in Docker.Client.Types

FromJSON PortType # 
Instance details

Defined in Docker.Client.Types

type Rep PortType # 
Instance details

Defined in Docker.Client.Types

type Rep PortType = D1 (MetaData "PortType" "Docker.Client.Types" "docker-0.6.0.0-GtJwIiAfbAs4xgCOTSUGuQ" False) (C1 (MetaCons "TCP" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "UDP" PrefixI False) (U1 :: * -> *))

data Network #

Instances
Eq Network # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: Network -> Network -> Bool #

(/=) :: Network -> Network -> Bool #

Show Network # 
Instance details

Defined in Docker.Client.Types

FromJSON [Network] # 
Instance details

Defined in Docker.Client.Types

data Mount #

Data type used for parsing the mount information from a container list.

Instances
Eq Mount # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: Mount -> Mount -> Bool #

(/=) :: Mount -> Mount -> Bool #

Show Mount # 
Instance details

Defined in Docker.Client.Types

Methods

showsPrec :: Int -> Mount -> ShowS #

show :: Mount -> String #

showList :: [Mount] -> ShowS #

Generic Mount # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep Mount :: * -> * #

Methods

from :: Mount -> Rep Mount x #

to :: Rep Mount x -> Mount #

FromJSON Mount # 
Instance details

Defined in Docker.Client.Types

type Rep Mount # 
Instance details

Defined in Docker.Client.Types

data PortBinding #

This datastructure models mapping a Port from the container onto the host system s that the service running in the container can be accessed from the outside world. We either map a port onto all interfaces (default) or onto a specific interface like `127.0.0.1`. NOTE: We should disallow duplicate port bindings as the ToJSON instance will only send the last one. { port/protocol: [{ HostPort: "port" }] }

data HostPort #

Constructors

HostPort 

Fields

Instances
Eq HostPort # 
Instance details

Defined in Docker.Client.Types

Show HostPort # 
Instance details

Defined in Docker.Client.Types

ToJSON HostPort # 
Instance details

Defined in Docker.Client.Types

FromJSON HostPort # 
Instance details

Defined in Docker.Client.Types

data Isolation #

Constructors

Default 
Process 
Hyperv 
Instances
Eq Isolation # 
Instance details

Defined in Docker.Client.Types

Show Isolation # 
Instance details

Defined in Docker.Client.Types

newtype UTSMode #

Constructors

UTSMode Text 
Instances
Eq UTSMode # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: UTSMode -> UTSMode -> Bool #

(/=) :: UTSMode -> UTSMode -> Bool #

Show UTSMode # 
Instance details

Defined in Docker.Client.Types

data HostConfig #

Instances
Eq HostConfig # 
Instance details

Defined in Docker.Client.Types

Show HostConfig # 
Instance details

Defined in Docker.Client.Types

Generic HostConfig # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep HostConfig :: * -> * #

ToJSON HostConfig # 
Instance details

Defined in Docker.Client.Types

FromJSON HostConfig # 
Instance details

Defined in Docker.Client.Types

type Rep HostConfig # 
Instance details

Defined in Docker.Client.Types

type Rep HostConfig = D1 (MetaData "HostConfig" "Docker.Client.Types" "docker-0.6.0.0-GtJwIiAfbAs4xgCOTSUGuQ" False) (C1 (MetaCons "HostConfig" PrefixI True) ((((S1 (MetaSel (Just "binds") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Bind]) :*: S1 (MetaSel (Just "containerIDFile") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe FilePath))) :*: (S1 (MetaSel (Just "logConfig") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 LogDriverConfig) :*: (S1 (MetaSel (Just "networkMode") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 NetworkMode) :*: S1 (MetaSel (Just "portBindings") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [PortBinding])))) :*: ((S1 (MetaSel (Just "restartPolicy") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 RestartPolicy) :*: (S1 (MetaSel (Just "volumeDriver") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "volumesFrom") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [VolumeFrom]))) :*: (S1 (MetaSel (Just "capAdd") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Text]) :*: (S1 (MetaSel (Just "capDrop") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Text]) :*: S1 (MetaSel (Just "dns") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Text]))))) :*: (((S1 (MetaSel (Just "dnsOptions") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Text]) :*: (S1 (MetaSel (Just "dnsSearch") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Text]) :*: S1 (MetaSel (Just "extraHosts") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Text]))) :*: (S1 (MetaSel (Just "ipcMode") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text)) :*: (S1 (MetaSel (Just "links") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Link]) :*: S1 (MetaSel (Just "oomScoreAdj") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Integer))))) :*: ((S1 (MetaSel (Just "privileged") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool) :*: (S1 (MetaSel (Just "publishAllPorts") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool) :*: S1 (MetaSel (Just "readonlyRootfs") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool))) :*: (S1 (MetaSel (Just "securityOpt") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Text]) :*: (S1 (MetaSel (Just "shmSize") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Integer)) :*: S1 (MetaSel (Just "resources") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 ContainerResources)))))))

defaultHostConfig :: HostConfig #

Default host confiratuon used for creating a container.

newtype NetworkingConfig #

Data type for the NetworkingConfig section of the container settings

Constructors

NetworkingConfig 

Fields

newtype EndpointConfig #

EndpointsConfig is container configuration for a specific network

Constructors

EndpointConfig [Alias] 

data Ulimit #

Constructors

Ulimit 
Instances
Eq Ulimit # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: Ulimit -> Ulimit -> Bool #

(/=) :: Ulimit -> Ulimit -> Bool #

Show Ulimit # 
Instance details

Defined in Docker.Client.Types

Generic Ulimit # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep Ulimit :: * -> * #

Methods

from :: Ulimit -> Rep Ulimit x #

to :: Rep Ulimit x -> Ulimit #

ToJSON Ulimit # 
Instance details

Defined in Docker.Client.Types

FromJSON Ulimit # 
Instance details

Defined in Docker.Client.Types

type Rep Ulimit # 
Instance details

Defined in Docker.Client.Types

type Rep Ulimit = D1 (MetaData "Ulimit" "Docker.Client.Types" "docker-0.6.0.0-GtJwIiAfbAs4xgCOTSUGuQ" False) (C1 (MetaCons "Ulimit" PrefixI True) (S1 (MetaSel (Just "ulimitName") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: (S1 (MetaSel (Just "ulimitSoft") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Integer) :*: S1 (MetaSel (Just "ulimitHard") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Integer))))

data ContainerResources #

Instances
Eq ContainerResources # 
Instance details

Defined in Docker.Client.Types

Show ContainerResources # 
Instance details

Defined in Docker.Client.Types

Generic ContainerResources # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep ContainerResources :: * -> * #

FromJSON ContainerResources # 
Instance details

Defined in Docker.Client.Types

type Rep ContainerResources # 
Instance details

Defined in Docker.Client.Types

type Rep ContainerResources = D1 (MetaData "ContainerResources" "Docker.Client.Types" "docker-0.6.0.0-GtJwIiAfbAs4xgCOTSUGuQ" False) (C1 (MetaCons "ContainerResources" PrefixI True) ((((S1 (MetaSel (Just "cpuShares") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Integer)) :*: S1 (MetaSel (Just "blkioWeight") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Integer))) :*: (S1 (MetaSel (Just "blkioWeightDevice") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe [DeviceWeight])) :*: S1 (MetaSel (Just "blkioDeviceReadBps") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe [DeviceRate])))) :*: ((S1 (MetaSel (Just "blkioDeviceWriteBps") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe [DeviceRate])) :*: S1 (MetaSel (Just "blkioDeviceReadIOps") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe [DeviceRate]))) :*: (S1 (MetaSel (Just "blkioDeviceWriteIOps") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe [DeviceRate])) :*: S1 (MetaSel (Just "cpuPeriod") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Integer))))) :*: (((S1 (MetaSel (Just "cpusetCpus") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "cpusetMems") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text))) :*: (S1 (MetaSel (Just "devices") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Device]) :*: S1 (MetaSel (Just "kernelMemory") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe MemoryConstraint)))) :*: ((S1 (MetaSel (Just "memory") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe MemoryConstraint)) :*: S1 (MetaSel (Just "memoryReservation") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe MemoryConstraint))) :*: (S1 (MetaSel (Just "memorySwap") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe MemoryConstraint)) :*: (S1 (MetaSel (Just "oomKillDisable") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Bool)) :*: S1 (MetaSel (Just "ulimits") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Ulimit])))))))

type Port = Integer #

type Name = Text #

type Value = Text #

data EnvVar #

Constructors

EnvVar Name Value 
Instances
Eq EnvVar # 
Instance details

Defined in Docker.Client.Types

Methods

(==) :: EnvVar -> EnvVar -> Bool #

(/=) :: EnvVar -> EnvVar -> Bool #

Show EnvVar # 
Instance details

Defined in Docker.Client.Types

ToJSON EnvVar # 
Instance details

Defined in Docker.Client.Types

FromJSON EnvVar # 
Instance details

Defined in Docker.Client.Types

data ContainerConfig #

Instances
Eq ContainerConfig # 
Instance details

Defined in Docker.Client.Types

Show ContainerConfig # 
Instance details

Defined in Docker.Client.Types

Generic ContainerConfig # 
Instance details

Defined in Docker.Client.Types

Associated Types

type Rep ContainerConfig :: * -> * #

ToJSON ContainerConfig # 
Instance details

Defined in Docker.Client.Types

FromJSON ContainerConfig # 
Instance details

Defined in Docker.Client.Types

type Rep ContainerConfig # 
Instance details

Defined in Docker.Client.Types

type Rep ContainerConfig = D1 (MetaData "ContainerConfig" "Docker.Client.Types" "docker-0.6.0.0-GtJwIiAfbAs4xgCOTSUGuQ" False) (C1 (MetaCons "ContainerConfig" PrefixI True) ((((S1 (MetaSel (Just "hostname") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "domainname") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text))) :*: (S1 (MetaSel (Just "user") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text)) :*: (S1 (MetaSel (Just "attachStdin") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool) :*: S1 (MetaSel (Just "attachStdout") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool)))) :*: ((S1 (MetaSel (Just "attachStderr") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool) :*: S1 (MetaSel (Just "exposedPorts") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [ExposedPort])) :*: (S1 (MetaSel (Just "tty") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool) :*: (S1 (MetaSel (Just "openStdin") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool) :*: S1 (MetaSel (Just "stdinOnce") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool))))) :*: (((S1 (MetaSel (Just "env") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [EnvVar]) :*: S1 (MetaSel (Just "cmd") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Text])) :*: (S1 (MetaSel (Just "image") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: (S1 (MetaSel (Just "volumes") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Volume]) :*: S1 (MetaSel (Just "workingDir") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe FilePath))))) :*: ((S1 (MetaSel (Just "entrypoint") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Entrypoint) :*: S1 (MetaSel (Just "networkDisabled") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Bool))) :*: (S1 (MetaSel (Just "macAddress") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe Text)) :*: (S1 (MetaSel (Just "labels") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Label]) :*: S1 (MetaSel (Just "stopSignal") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Signal)))))))

defaultContainerConfig :: Text -> ContainerConfig #

Container configuration used for creating a container with sensible defaults.

data ExposedPort #

ExposedPort represents a port (and it's type) that a container should expose to other containers or the host system. NOTE: This does not automatically expose the port onto the host system but rather it just tags it. It's best to be used with the PublishAllPorts flag. It is also useful for the daemon to know which Environment variables to inject into a container linking to our container. Example linking a Postgres container named db would inject the following environment variables automatically if we set the corresponding

ExposedPort:

DB_PORT_5432_TCP_PORT="5432"
DB_PORT_5432_TCP_PROTO="tcp"
DB_PORT_5432_TCP="tcp://172.17.0.1:5432"

Constructors

ExposedPort Port PortType 

addPortBinding :: PortBinding -> CreateOpts -> CreateOpts #

A convenience function that adds PortBindings to and exiting CreateOpts record. Useful with defaultCreateOpts Example:

>>> let pb = PortBinding 80 TCP [HostPort "0.0.0.0" 8000]
>>> addPortBinding pb $ defaultCreateOpts "nginx:latest"

addExposedPort :: ExposedPort -> CreateOpts -> CreateOpts #

Helper function for adding a ExposedPort to and existing CreateOpts record.

addBind :: Bind -> CreateOpts -> CreateOpts #

A helper function to more easily add a bind mount to existing CreateOpts records.

setCmd :: Text -> CreateOpts -> CreateOpts #

Helper function for adding a Command to and existing CreateOpts record.

addLink :: Link -> CreateOpts -> CreateOpts #

Helper function for adding a Link to and existing CreateOpts record.

addVolume :: Volume -> CreateOpts -> CreateOpts #

Helper function for adding a Volume to and existing CreateOpts record.

addVolumeFrom :: VolumeFrom -> CreateOpts -> CreateOpts #

Helper function for adding a VolumeFrom to and existing CreateOpts record.