Docker Volume service RDB (deprecated)



Docker Volume RBD is my implementation of an RBD (Ceph) driver for Docker. The operation is done via Systemd Service or native as a Docker plugin. In order to make upgradability easier, I recommend installing and configuration using my Ansible Playbook or via the Package Manager and including my Repository.

Requirement

  • Ceph > 14.x
  • Docker Engine

Manual Installation

To mount RBD storage images, Ceph must first be configured on the corresponding server. This is not part of this short guide.

The executable “docker-volume-rbd” expects the required configuration via environment variables.

LOG_LEVEL=1
LOG_LEVEL=3
RBD_CONF_POOL="docker"
RBD_CONF_CLUSTER=ceph
RBD_CONF_KEYRING_USER=client.docker

If e.g. Rexray was used as S3 volume provider before, the buckets each contain a “data” subdirectory in which the actual data is stored. where the actual data is stored. To take this into account, this directory can be specified with the following configuration can be specified:

RBD_CONF_MOUNTDIR=/data

Furthermore, the following default settings can be changed:

RBD_CONF_DEVICE_MAP_ROOT=/dev/rbd

Afterwards, the service can be executed via “docker-volume-rbd”.