This is a [docker-registry backend driver](https://github.com/dotcloud/docker-registry/tree/master/depends/docker-registry-core) based on the [Elliptics](http://reverbrain.com/elliptics/) key-value storage.
[![PyPI version][pypi-image]][pypi-url]
[![Build Status][travis-image]][travis-url]
[](https://coveralls.io/r/noxiouz/docker-registry-driver-elliptics?branch=master)
## Usage
Assuming you have a working docker-registry and elliptics setup.
`pip install docker-registry-driver-elliptics`
Edit your configuration so that `storage` reads `elliptics`.
## Options
You may add any of the following to your main docker-registry configuration to further configure it.
1. `elliptics_nodes`: Elliptics remotes. Endpoint is `host:port:af`. `af` is address family as number. Use `2` for IPv4, `10` for IPv6
1. `elliptics_wait_timeout`: time to wait for the operation complete
1. `elliptics_check_timeout`: timeout for pinging node
1. `elliptics_io_thread_num`: number of IO threads in processing pool
1. `elliptics_net_thread_num`: number of threads in network processing pool
1. `elliptics_nonblocking_io_thread_num`: number of IO threads in processing pool dedicated to nonblocking ops
1. `elliptics_groups`: Elliptics groups registry should use
1. `elliptics_verbosity`: Elliptics logger verbosity (0...4)
1. `elliptics_logfile`: path to Elliptics logfile (default: `dev/stderr`)
Example:
```yaml
storage: elliptics
elliptics_nodes: [
"elliptics-host1:1025:2",
"elliptics-host2:1025:10",
...
"host:port:af" ] # or spaceseparated string
elliptics_wait_timeout: 60
elliptics_check_timeout: 60
elliptics_io_thread_num: 2
elliptics_net_thread_num: 2
elliptics_nonblocking_io_thread_num: 2
elliptics_groups: [1, 2, 3]
elliptics_verbosity: 4
elliptics_logfile: "/tmp/logfile.log"
elliptics_loglevel: debug
```
## Developer setup
Clone this.
Install `Elliptics`:
```
sudo apt-get install curl
curl http://repo.reverbrain.com/REVERBRAIN.GPG | sudo apt-key add -
sudo echo "deb http://repo.reverbrain.com/precise/ current/amd64/" | sudo tee -a /etc/apt/sources.list
sudo echo "deb http://repo.reverbrain.com/precise/ current/all/" | sudo tee -a /etc/apt/sources.list
sudo apt-get update
sudo apt-get install elliptics
```
Get your python ready:
```
sudo apt-get install python-pip
sudo pip install tox
```
Start the test `Elliptics`:
```
cd fixtures
sudo ./start.sh
```
You are ready to hack.
In order to verify what you did is ok, just run `tox`.
This will run the tests provided by [`docker-registry-core`](https://github.com/dotcloud/docker-registry/tree/master/depends/docker-registry-core)
## License
This is licensed under the Apache license.
Most of the code here comes from docker-registry, under an Apache license as well.
[pypi-url]: https://pypi.python.org/pypi/docker-registry-driver-elliptics
[pypi-image]: https://badge.fury.io/py/docker-registry-driver-elliptics.svg
[travis-url]: http://travis-ci.org/noxiouz/docker-registry-driver-elliptics
[travis-image]: https://secure.travis-ci.org/noxiouz/docker-registry-driver-elliptics.png?branch=master
Metadata
Release files for docker-registry-driver-elliptics 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| docker-registry-driver-elliptics-0.1.1.tar.gz | 15.2 kB | Without provenance | Details for docker-registry-driver-elliptics-0.1.1.tar.gz |
Release files / docker-registry-driver-elliptics-0.1.1.tar.gz
| Download URL | docker-registry-driver-elliptics-0.1.1.tar.gz |
|---|---|
| Size | 15.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
432da44225069aa4519dc1d9d645791238205a5b177bbcf3e6fc9470a55636a1
|
|
BLAKE2b-256 checksum How to use checksums |
88f9332bfdd052218b3f0eaaabd1d8bcf064109280140ab8900ee1fbe96d178c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for docker-registry-driver-elliptics 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.