This is a docker-registry backend driver based on the Elliptics key-value storage.
Assuming you have a working docker-registry and elliptics setup.
pip install docker-registry-driver-elliptics
Edit your configuration so that storage
reads elliptics
.
You may add any of the following to your main docker-registry configuration to further configure it.
elliptics_nodes
: Elliptics remotes. Endpoint ishost:port:af
.af
is address family as number. Use2
for IPv4,10
for IPv6elliptics_wait_timeout
: time to wait for the operation completeelliptics_check_timeout
: timeout for pinging nodeelliptics_io_thread_num
: number of IO threads in processing poolelliptics_net_thread_num
: number of threads in network processing poolelliptics_nonblocking_io_thread_num
: number of IO threads in processing pool dedicated to nonblocking opselliptics_groups
: Elliptics groups registry should useelliptics_verbosity
: Elliptics logger verbosityinfo|debug|notice|data|error
elliptics_logfile
: path to Elliptics logfile (default:dev/stderr
)elliptics_node_flags
: names of flags for Node
Example:
elliptics:
<<: *common
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: "debug"
elliptics_logfile: "/tmp/logfile.log"
elliptics_node_flags: ["mix_stats", "no_csum"]
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
This is licensed under the Apache license. Most of the code here comes from docker-registry, under an Apache license as well.