A docker image to run OpenLDAP, and make periodic backups.
- Quick start
- Environment Variables
- Advanced User Guide
If you find this image useful here's how you can help:
- Send a pull request with your kickass new features and bug fixes
- Help new users with issues they may encounter
- Support the development of this image and star this repo !
This image is based on osixia/openldap please refer to: https://github.com/osixia/docker-openldap
Here just the backup extension will be described.
Backup directory and data persistence
Backups are created in the directory
/data/backup that should be mapped has volume so your ldap files are saved outside the container.
docker run --env LDAP_BACKUP_CONFIG_CRON_EXP="0 5 * * *" \ --volume /data/openldap/backup:/data/backup \ --detach osixia/openldap-backup:1.2.2
For more information about docker data volume, please refer to :
The container default log level is info.
Available levels are:
Example command to run the container in
docker run --detach osixia/openldap-backup:1.2.2 --loglevel debug
See all command line options:
docker run osixia/openldap-backup:1.2.2 --help
Environment variables defaults are set in image/environment/default.yaml.
See how to set your own environment variables
LDAP_BACKUP_CONFIG_CRON_EXP: Cron expression to schedule OpenLDAP config backup. Defaults to
0 4 * * *. Every days at 4am.
LDAP_BACKUP_DATA_CRON_EXP: Cron expression to schedule OpenLDAP data backup. Defaults to
0 4 * * *. Every days at 4am.
LDAP_BACKUP_TTL: Backup TTL in days. Defaults to
Set your own environment variables
Use command line argument
Environment variables can be set by adding the --env argument in the command line, for example:
docker run --env LDAP_BACKUP_CONFIG_CRON_EXP="0 5 * * *" \ --detach osixia/openldap-backup:1.2.2
Link environment file
For example if your environment file is in : /data/ldap/environment/my-env.yaml
docker run --volume /data/ldap/environment/my-env.yaml:/container/environment/01-custom/env.yaml \ --detach osixia/openldap-backup:1.2.2
Take care to link your environment file to
/container/environment/XX-somedir (with XX < 99 so they will be processed before default environment files) and not directly to
/container/environment because this directory contains predefined baseimage environment files to fix container environment (INITRD, LANG, LANGUAGE and LC_CTYPE).
Make your own image or extend this image
This is the best solution if you have a private registry. Please refer to the Advanced User Guide just below.
Advanced User Guide
Extend osixia/openldap-backup:1.2.2 image
If you need to add your custom environment files you can extends this image.
FROM osixia/openldap-backup:1.2.2 MAINTAINER Your Name <firstname.lastname@example.org> ADD environment /container/environment/01-custom
Make your own openldap-backup image
Clone this project:
git clone https://github.com/osixia/docker-openldap-backup cd docker-openldap-backup
Adapt Makefile, set your image NAME and VERSION, for example:
NAME = osixia/openldap-backup VERSION = 1.1.9 become: NAME = cool-guy/openldap-backup VERSION = 0.1.0
Add environment files...
Build your image:
Run your image:
docker run --detach cool-guy/openldap-backup:0.1.0
We use Bats (Bash Automated Testing System) to test this image:
Install Bats, and in this project directory run:
Kubernetes is an open source system for managing containerized applications across multiple hosts, providing basic mechanisms for deployment, maintenance, and scaling of applications.
osixia-openldap-backup kubernetes examples are available in osixia/docker-openldap.
Under the hood: osixia/openldap
This image is based on osixia/openldap. More info: https://github.com/osixia/docker-openldap
If you discover a security vulnerability within this docker image, please send an email to the Osixia! team at email@example.com. For minor vulnerabilities feel free to add an issue here on github.
Please include as many details as possible.
Please refer to: CHANGELOG.md