clibdocker  0.1.0-alpha.0
A Docker API for C
clibdocker API Documentation

clibdocker is a C language implementation of the Docker Engine API v1.39. The C API organization is similar to the reference JSON API specification.

API Coverage

API Coverage is tracked at a granular level in a separate document Docker API Coverage.

API Organization

The Docker API is organized around the objects managed by the docker runtime. There is one header file, with one set of functions per Docker Object in this API.

Docker API Object Header File
Docker Result docker_result.h
Docker Connection docker_connection_util.h
Docker Containers docker_containers.h
Docker Images docker_images.h
Docker Networks docker_networks.h
Docker System docker_system.h
Docker Volumes docker_volumes.h
Docker Ignore docker_ignore.h
Docker Log docker_log.h

Single Header File

The docker_all.h file includes all the other important header files.

Goals

  • Simplicity: Easy to understand and use API
  • Safety: Good memory management, Documentation ensures warnings about safe usage, thread safety.
  • Efficiency: Keep calls lightweight to enable heavy usage.

Limitations

This method calls in the API are synchronous, which means the calling thread will block for response.