docker: An API client for docker written in Haskell

[ bsd3, library, network ] [ Propose Tags ]

See API documentation below.

[Skip to Readme]


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS],,,,,,,,,,,,,,,,,,,,,,,, (info)
Dependencies aeson (>=0.9.0 && <3.0.0), base (>=4.7 && <5), blaze-builder (>=0.4.0 && <0.5.0), bytestring (>=0.10.0 && <0.12.0), conduit, conduit-combinators, conduit-extra, containers (>=0.5.0 && <0.7.0), data-default-class (>=0.0.1 && <0.2.0), directory (>=, exceptions, filemanip, filepath, http-client (>=0.4.0 && <0.8.0), http-conduit, http-types (>=0.9 && <0.13), monad-control, mtl (>=2.0.0 && <3.0.0), network (>=2.6.0), resourcet, scientific (>=0.3.0 && <0.4.0), tar, temporary, text (>=1.0.0 && <2.0.0), time (>=1.5.0 && <2.0.0), tls (>=1.3.7 && <1.7.0), transformers, transformers-base, unliftio-core (>= && <0.3.0), unordered-containers (>=0.2.0 && <0.3.0), uuid, vector, x509 (>=1.6.0 && <1.8.0), x509-store (>=1.6.0 && <1.8.0), x509-system (>=1.6.0 && <1.8.0), zlib [details]
License BSD-3-Clause
Copyright BSD3
Author Deni Bertovic <>, James Parker <>
Maintainer Deni Bertovic <>
Category Network
Home page
Source repo head: git clone
Uploaded by denibertovic at 2022-06-17T18:48:58Z
Reverse Dependencies 2 direct, 0 indirect [details]
Downloads 14370 total (78 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2022-06-17 [all 1 reports]

Readme for docker-

[back to package description]

An API client for docker written in Haskell

Current state

Supported Docker Engine Api version: v1.24 and onwards.

Anything upward of that should work since Docker versions their API. Older docker version and engine api versions are not supported at the moment.


The API-documentation is available at Hackage. There are also some usage-examples in the main library source file, Client.hs.


Please see

Project Setup

For working on the library, you need the Haskell Tool Stack installed (see the Haskell Tool Stack website). You also need make to use the Makefile included in the project. Run make help to see the available commands (for building, running the tests and releasing).


Tests are located in the tests directory and can be run with make test. This only runs the unit tests.

To run integration tests, you need Docker installed and listening on Port 2375 of localhost (docker only listens to a Unix socket by default, see the Docker documentation for details). Set the environment variable RUN_INTEGRATION_TESTS, i.e. RUN_INTEGRATION_TESTS=1 make test.