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

Safe HaskellNone
LanguageHaskell2010

Docker.Client.Http

Synopsis

Documentation

newtype HttpHandler m Source #

Constructors

HttpHandler (forall a. Request -> (Response () -> Sink ByteString m (Either DockerError a)) -> m (Either DockerError a)) 

data DockerError Source #

Constructors

DockerConnectionError HttpException 
DockerInvalidRequest Endpoint 
DockerClientError Text 
DockerClientDecodeError Text

Could not parse the response from the Docker endpoint.

DockerInvalidStatusCode Status

Invalid exit code received from Docker endpoint.

GenericDockerError Text 
Instances
Show DockerError Source # 
Instance details

Defined in Docker.Client.Http

newtype DockerT m a Source #

Constructors

DockerT 
Instances
MonadTrans DockerT Source # 
Instance details

Defined in Docker.Client.Http

Methods

lift :: Monad m => m a -> DockerT m a #

Monad m => Monad (DockerT m) Source # 
Instance details

Defined in Docker.Client.Http

Methods

(>>=) :: DockerT m a -> (a -> DockerT m b) -> DockerT m b #

(>>) :: DockerT m a -> DockerT m b -> DockerT m b #

return :: a -> DockerT m a #

fail :: String -> DockerT m a #

Functor m => Functor (DockerT m) Source # 
Instance details

Defined in Docker.Client.Http

Methods

fmap :: (a -> b) -> DockerT m a -> DockerT m b #

(<$) :: a -> DockerT m b -> DockerT m a #

Applicative m => Applicative (DockerT m) Source # 
Instance details

Defined in Docker.Client.Http

Methods

pure :: a -> DockerT m a #

(<*>) :: DockerT m (a -> b) -> DockerT m a -> DockerT m b #

liftA2 :: (a -> b -> c) -> DockerT m a -> DockerT m b -> DockerT m c #

(*>) :: DockerT m a -> DockerT m b -> DockerT m b #

(<*) :: DockerT m a -> DockerT m b -> DockerT m a #

MonadIO m => MonadIO (DockerT m) Source # 
Instance details

Defined in Docker.Client.Http

Methods

liftIO :: IO a -> DockerT m a #

Monad m => MonadReader (DockerClientOpts, HttpHandler m) (DockerT m) Source # 
Instance details

Defined in Docker.Client.Http

unixHttpHandler Source #

Arguments

:: (MonadUnliftIO m, MonadIO m, MonadMask m) 
=> FilePath

The socket to connect to

-> m (HttpHandler m) 

Connect to a unix domain socket (the default docker socket is at /var/run/docker.sock)

Docker seems to ignore the hostname in requests sent over unix domain sockets (and the port obviously doesn't matter either)